/* eslint-env node */ import globals from "globals"; import pluginVue from "eslint-plugin-vue"; import parserVue from "vue-eslint-parser"; import importPlugin from "eslint-plugin-import"; export default [ { name: "app/files-to-lint", files: ["**/*.{js,mjs,jsx,vue}"], }, { name: "app/files-to-ignore", ignores: ["**/dist/**", "**/node_modules/**", "**/help-center/**"], }, ...pluginVue.configs["flat/recommended"], { languageOptions: { globals: { ...globals.browser, ...globals.node, }, parser: parserVue, ecmaVersion: "latest", sourceType: "module", }, plugins: { import: importPlugin, }, rules: { // 确保导入的模块实际存在(核心规则,防止构建失败) "import/no-unresolved": "error", // 确保导入的命名导出实际存在 "import/named": "error", // 确保默认导出存在 "import/default": "error", // 确保命名空间导出存在 "import/namespace": "error", // Vue 相关规则 "vue/multi-word-component-names": "off", }, settings: { "import/resolver": { alias: { map: [ ["@", "./src"], ], extensions: [".js", ".jsx", ".vue"], }, }, }, }, ];