diff --git a/.vscode/settings.json b/.vscode/settings.json
index 79b2a717..1d237d44 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -1,48 +1,35 @@
{
- // Enable the ESlint flat config support
- "eslint.experimental.useFlatConfig": true,
+ // Enable the ESlint flat config support
+ "eslint.experimental.useFlatConfig": true,
- // Disable the default formatter, use eslint instead
- "prettier.enable": false,
- "editor.formatOnSave": false,
+ // Disable the default formatter, use eslint instead
+ "prettier.enable": false,
+ "editor.formatOnSave": false,
- // Auto fix
- "editor.codeActionsOnSave": {
- "source.fixAll.eslint": "explicit",
- "source.organizeImports": "never"
- },
+ // Auto fix
+ "editor.codeActionsOnSave": {
+ "source.fixAll.eslint": "explicit",
+ "source.organizeImports": "never"
+ },
- // Silent the stylistic rules in you IDE, but still auto fix them
- "eslint.rules.customizations": [
- { "rule": "style/*", "severity": "off" },
- { "rule": "*-indent", "severity": "off" },
- { "rule": "*-spacing", "severity": "off" },
- { "rule": "*-spaces", "severity": "off" },
- { "rule": "*-order", "severity": "off" },
- { "rule": "*-dangle", "severity": "off" },
- { "rule": "*-newline", "severity": "off" },
- { "rule": "*quotes", "severity": "off" },
- { "rule": "*semi", "severity": "off" }
- ],
+ // Enable eslint for all supported languages
+ "eslint.validate": [
+ "javascript",
+ "javascriptreact",
+ "typescript",
+ "typescriptreact",
+ "vue",
+ "html",
+ "markdown",
+ "json",
+ "jsonc",
+ "yaml"
+ ],
- // Enable eslint for all supported languages
- "eslint.validate": [
- "javascript",
- "javascriptreact",
- "typescript",
- "typescriptreact",
- "vue",
- "html",
- "markdown",
- "json",
- "jsonc",
- "yaml"
- ],
-
- "pair-diff.patterns": [
- {
- "source": "./fixtures/output/**/*.*",
- "target": "./fixtures/input/"
- }
- ]
+ "pair-diff.patterns": [
+ {
+ "source": "./fixtures/output/**/*.*",
+ "target": "./fixtures/input/"
+ }
+ ]
}
diff --git a/docs/reference/plugin/plugins/layout.md b/docs/reference/plugin/plugins/layout.md
index bb1584f3..fc474b1c 100644
--- a/docs/reference/plugin/plugins/layout.md
+++ b/docs/reference/plugin/plugins/layout.md
@@ -90,8 +90,9 @@ Fes.js 里约定目录下有 `layout.vue` 时会生成嵌套路由,以 `layout
```vue
-
+
+
```
diff --git a/eslint.config.js b/eslint.config.js
index 8582d3bb..fffcf2cb 100644
--- a/eslint.config.js
+++ b/eslint.config.js
@@ -2,19 +2,36 @@
import antfu from '@antfu/eslint-config';
export default await antfu({
+ files: ['**/*.js', '**/*.jsx', '**/*.vue', '**/*.ts'],
+ // TODO: 使用 ignore 代替 cli 命令中的配置
stylistic: {
- indent: 4, // 4, or 'tab'
- quotes: 'single', // or 'double'
+ indent: 4,
+ quotes: 'single',
semi: 'always',
},
typescript: true,
vue: true,
rules: {
+ 'curly': ['error', 'multi-line'],
'vue/block-order': [
'error',
{
order: ['template', 'script', 'style'],
},
],
+ 'style/member-delimiter-style': [
+ 'error',
+ {
+ multiline: {
+ delimiter: 'semi',
+ requireLast: true,
+ },
+ singleline: {
+ delimiter: 'semi',
+ requireLast: false,
+ },
+ multilineDetection: 'brackets',
+ },
+ ],
},
});
diff --git a/package.json b/package.json
index 78fe1388..ecabb746 100644
--- a/package.json
+++ b/package.json
@@ -1,13 +1,21 @@
{
"name": "fes.js",
+ "type": "module",
"version": "3.1.1",
+ "private": true,
"description": "一个好用的前端管理台快速开发框架",
"preferGlobal": true,
- "private": true,
"workspaces": [
"packages/*"
],
- "type": "module",
+ "license": "MIT",
+ "keywords": [
+ "管理端",
+ "fes",
+ "fast",
+ "easy",
+ "strong"
+ ],
"scripts": {
"bootstrap": "pnpm i",
"dev": "node scripts/build.mjs --watch",
@@ -18,17 +26,10 @@
"docs:build": "vitepress build docs",
"docs:build-pages": "BASE=fes.js vitepress build docs",
"test": "fes test",
- "lint": "eslint -c ./.eslintrc.js --ignore-pattern='templates' --ext .js,.jsx,.vue,.ts",
- "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s"
+ "lint": "eslint --ignore-pattern='templates'",
+ "changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
+ "hooks:sync": "simple-git-hooks"
},
- "license": "MIT",
- "keywords": [
- "管理端",
- "fes",
- "fast",
- "easy",
- "strong"
- ],
"dependencies": {
"chalk": "^5.0.1",
"conventional-changelog-cli": "^4.1.0",
@@ -38,14 +39,14 @@
"semver": "^7.3.6"
},
"devDependencies": {
- "@antfu/eslint-config": "^2.1.1",
+ "@antfu/eslint-config": "^2.6.2",
"@commitlint/cli": "^11.0.0",
"@commitlint/config-conventional": "^11.0.0",
"chokidar": "^3.5.3",
"commitizen": "^4.3.0",
"cz-conventional-changelog": "^3.3.0",
"deepmerge": "^4.2.2",
- "eslint": "^8.54.0",
+ "eslint": "^8.56.0",
"fs-extra": "^11.1.1",
"lint-staged": "^13.2.0",
"simple-git-hooks": "^2.9.0",
@@ -54,15 +55,15 @@
"vue": "^3.3.4",
"yargs-parser": "^21.1.1"
},
+ "simple-git-hooks": {
+ "pre-commit": "lint-staged",
+ "commit-msg": "commitlint"
+ },
"lint-staged": {
"*.{js,jsx,vue,ts}": [
"npm run lint"
]
},
- "simple-git-hooks": {
- "pre-commit": "lint-staged",
- "commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
- },
"config": {
"commitizen": {
"path": "./node_modules/cz-conventional-changelog"
diff --git a/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue b/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue
index 513fc52e..13898255 100644
--- a/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue
+++ b/packages/fes-plugin-layout/src/runtime/views/BaseLayout.vue
@@ -1,7 +1,7 @@
-
+
-
-
-
{{ title }}
+
+
+ {{ title }}
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
{{ title }}
+
+
+ {{ title }}
+
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
-
-
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
-
-
-
+
+
+
-
+
+