vue3 找不到模块“@/api/user/type”或其相应的声明

问题描述

问题处理

@/api/user/type 引用不到的问题可能与 TypeScript 的项目引用(Project References)配置有关。以下是可能的原因和解决方案:

1. 检查模块路径是否正确

确保 @/api/user/type 的路径是正确的。如果你使用的是别名(如 @),需要在 tsconfig.json 中配置 baseUrlpaths

例如:

{
  "compilerOptions": {
    "baseUrl": ".", // 设置基准路径
    "paths": {
      "@/*": ["src/*"] // 配置别名
    }
  }
}

2. 确保项目引用配置正确

如果你使用了 references,需要确保主项目和子项目的 tsconfig.json 配置正确。

主项目的 tsconfig.json
{
  "compilerOptions": {
    "composite": true,
    "outDir": "./dist",
    "baseUrl": ".",
    "paths": {
      "@/*": ["src/*"]
    }
  },
  "references": [
    { "path": "./subproject" } // 引用子项目
  ]
}
子项目的 tsconfig.json
{
  "compilerOptions": {
    "composite": true,
    "outDir": "./dist",
    "baseUrl": ".",
    "paths": {
      "@/*": ["src/*"]
    }
  }
}

3. 检查子项目是否正确输出

如果子项目中的模块没有正确输出到指定的 outDir,可能会导致引用失败。确保子项目的 outDir 配置正确,并且模块文件在编译后能正确生成。

4. 使用 tsc --build 构建项目

当你使用项目引用时,建议使用 tsc --build 命令来构建项目,而不是直接使用 tsc。这可以确保项目引用的依赖关系被正确处理。

例如:

tsc --build

5. 检查依赖关系

如果子项目依赖其他模块,确保这些依赖在子项目的 tsconfig.json 中正确配置。

6. 检查文件是否存在

确保 @/api/user/type 文件确实存在于指定路径下,并且文件名和路径拼写正确。

总结

通过以下步骤可以解决 @/api/user/type 引用不到的问题:

  1. 确保 baseUrlpaths 配置正确。

  2. 确保主项目和子项目的 tsconfig.json 配置正确,特别是 compositeoutDir

  3. 使用 tsc --build 构建项目。

  4. 确保文件路径和拼写正确。

Module Warning (from ./node_modules/postcss-loader/src/index.js): Warning (65:3) end value has mixed support, consider using flex-end instead @ ./node_modules/vue-style-loader??ref--10-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--10-oneOf-1-2!./node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/modules/workPlan/Extraction.vue?vue&type=style&index=0&id=73864b24&lang=less&scoped=true& 4:14-558 14:3-18:5 15:22-566 @ ./src/views/Index/fireControl/business/modules/workPlan/Extraction.vue?vue&type=style&index=0&id=73864b24&lang=less&scoped=true& @ ./src/views/Index/fireControl/business/modules/workPlan/Extraction.vue @ ./src lazy ^\.\/views.*$ namespace object @ ./src/utils/safe.js @ ./src/main.js @ multi (webpack)-dev-server/client?http://192.168.3.169:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js warning in ./src/views/Index/fireControl/business/components/QuoteFileDialog.vue?vue&type=style&index=0&id=f3814272&lang=less&scoped=true& Module Warning (from ./node_modules/postcss-loader/src/index.js): Warning (7:3) end value has mixed support, consider using flex-end instead @ ./node_modules/vue-style-loader??ref--10-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--10-oneOf-1-2!./node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/components/QuoteFileDialog.vue?vue&type=style&index=0&id=f3814272&lang=less&scoped=true& 4:14-545 14:3-18:5 15:22-553 @ ./src/views/Index/fireControl/business/components/QuoteFileDialog.vue?vue&type=style&index=0&id=f3814272&lang=less&scoped=true& @ ./src/views/Index/fireControl/business/components/QuoteFileDialog.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/modules/drawings/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/modules/drawings/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/modules/drawings/Index.vue @ ./src lazy ^\.\/views.*$ namespace object @ ./src/utils/safe.js @ ./src/main.js @ multi (webpack)-dev-server/client?http://192.168.3.169:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js warning in ./src lazy ^\.\/views.*$ namespace object Module not found: Error: [CaseSensitivePathsPlugin] `D:\projects\subwaysoft-plus-bjzj-web\src\views\Index\supervise\singleProject\components\SupChek\taskProcessing\components\AllNumCheckDialog.js` does not match the corresponding path on disk `allNumCheckDialog.js`. WARNING Compiled with 11 warnings 16:27:36 warning in ./src/components/public/layout/Index.vue?vue&type=script&lang=js& "export 'EXIT' was not found in '@/apis/basic/admin' warning in ./src/components/public/layout/Index.vue?vue&type=script&lang=js& "export 'ROLE_USER_CODE' was not found in '@/apis/basic/admin' warning in ./src/views/public/SSOLogin.vue?vue&type=script&lang=js& "export 'SYSMENU_HALL_LIST' was not found in '@/apis/basic/admin' warning in ./src/views/public/SSOLogin.vue?vue&type=script&lang=js& "export 'SYSMENU_ONE_HALL_LIST' was not found in '@/apis/basic/admin' warning in ./src/components/public/layout/Index.vue?vue&type=script&lang=js& "export 'UPDATE_PWD_BYSELF' was not found in '@/apis/basic/admin' warning in ./src/components/public/layout/Index.vue?vue&type=script&lang=js& "export 'UPDATE_PWD_BYSELF' was not found in '@/apis/basic/admin' warning in ./src/components/public/layout/Index.vue?vue&type=script&lang=js& "export 'USER_DETAIL' was not found in '@/apis/basic/admin' warning in ./src/views/Index/supervise/singleProject/components/SupChek/taskProcessing/components/BaseInfo.vue?vue&type=style&index=0&id=5d017548&lang=less&scoped=true& Module Warning (from ./node_modules/postcss-loader/src/index.js): Warning (13:3) end value has mixed support, consider using flex-end instead @ ./node_modules/vue-style-loader??ref--10-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--10-oneOf-1-2!./node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/supervise/singleProject/components/SupChek/taskProcessing/components/BaseInfo.vue?vue&type=style&index=0&id=5d017548&lang=less&scoped=true& 4:14-592 14:3-18:5 15:22-600 @ ./src/views/Index/supervise/singleProject/components/SupChek/taskProcessing/components/BaseInfo.vue?vue&type=style&index=0&id=5d017548&lang=less&scoped=true& @ ./src/views/Index/supervise/singleProject/components/SupChek/taskProcessing/components/BaseInfo.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/supervise/singleProject/components/SupChek/taskProcessing/FireDialog.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/components/SupChek/taskProcessing/FireDialog.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/components/SupChek/taskProcessing/FireDialog.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/supervise/singleProject/components/SupChek/SupTaskProcessing.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/components/SupChek/SupTaskProcessing.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/components/SupChek/SupTaskProcessing.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/supervise/singleProject/components/TabsProcess.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/components/TabsProcess.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/components/TabsProcess.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/supervise/singleProject/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/supervise/singleProject/Index.vue @ ./src/router/index.js @ ./src/main.js @ multi (webpack)-dev-server/client?http://192.168.3.169:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js warning in ./src/views/Index/fireControl/business/modules/workPlan/Extraction.vue?vue&type=style&index=0&id=73864b24&lang=less&scoped=true& Module Warning (from ./node_modules/postcss-loader/src/index.js): Warning (65:3) end value has mixed support, consider using flex-end instead @ ./node_modules/vue-style-loader??ref--10-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--10-oneOf-1-2!./node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/modules/workPlan/Extraction.vue?vue&type=style&index=0&id=73864b24&lang=less&scoped=true& 4:14-558 14:3-18:5 15:22-566 @ ./src/views/Index/fireControl/business/modules/workPlan/Extraction.vue?vue&type=style&index=0&id=73864b24&lang=less&scoped=true& @ ./src/views/Index/fireControl/business/modules/workPlan/Extraction.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/modules/workPlan/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/modules/workPlan/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/modules/workPlan/Index.vue @ ./src/views/Index/fireControl/business/layout/routeUrl.js @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/layout/right.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/layout/right.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/layout/right.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/Index.vue @ ./src/router/fireMain.js @ ./src/router/index.js @ ./src/main.js @ multi (webpack)-dev-server/client?http://192.168.3.169:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js warning in ./src/views/Index/fireControl/business/components/QuoteFileDialog.vue?vue&type=style&index=0&id=f3814272&lang=less&scoped=true& Module Warning (from ./node_modules/postcss-loader/src/index.js): Warning (7:3) end value has mixed support, consider using flex-end instead @ ./node_modules/vue-style-loader??ref--10-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--10-oneOf-1-1!./node_modules/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/postcss-loader/src??ref--10-oneOf-1-2!./node_modules/less-loader/dist/cjs.js??ref--10-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/components/QuoteFileDialog.vue?vue&type=style&index=0&id=f3814272&lang=less&scoped=true& 4:14-545 14:3-18:5 15:22-553 @ ./src/views/Index/fireControl/business/components/QuoteFileDialog.vue?vue&type=style&index=0&id=f3814272&lang=less&scoped=true& @ ./src/views/Index/fireControl/business/components/QuoteFileDialog.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/modules/drawings/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/modules/drawings/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/modules/drawings/Index.vue @ ./src/views/Index/fireControl/business/layout/routeUrl.js @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/layout/right.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/layout/right.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/layout/right.vue @ ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./src/views/Index/fireControl/business/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/Index.vue?vue&type=script&lang=js& @ ./src/views/Index/fireControl/business/Index.vue @ ./src/router/fireMain.js @ ./src/router/index.js @ ./src/main.js @ multi (webpack)-dev-server/client?http://192.168.3.169:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js warning in ./src lazy ^\.\/views.*$ namespace object Module not found: Error: [CaseSensitivePathsPlugin] `D:\projects\subwaysoft-plus-bjzj-web\src\views\Index\supervise\singleProject\components\SupChek\taskProcessing\components\AllNumCheckDialog.js` does not match the corresponding path on disk `allNumCheckDialog.js`.
07-31
17:55:34 [vite] Internal server error: Failed to resolve import "../utils/api/user" from "src/components/usertable.vue". Does the file exist? Plugin: vite:import-analysis File: D:/xuexi/vue3/vue3/vue-cangku/src/components/usertable.vue:94:49 15 | import { defineComponent as _defineComponent } from "vue"; 16 | import { ref, reactive, onMounted } from "vue"; 17 | import { SelectUserTable, UpdateUserTable } from "../utils/api/user"; | ^ 18 | import { ElMessage } from "element-plus"; 19 | const _sfc_main = /* @__PURE__ */ _defineComponent({ at TransformPluginContext._formatLog (file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite/dist/node/chunks/dep-CMEinpL-.js:31553:43) at TransformPluginContext.error (file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite/dist/node/chunks/dep-CMEinpL-.js:31550:14) at normalizeUrl (file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite/dist/node/chunks/dep-CMEinpL-.js:30022:18) at process.processTicksAndRejections (node:internal/process/task_queues:105:5) at async file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite/dist/node/chunks/dep-CMEinpL-.js:30080:32 at async Promise.all (index 3) at async TransformPluginContext.transform (file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite/dist/node/chunks/dep-CMEinpL-.js:30048:4) at async file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite-plugin-inspect/dist/shared/vite-plugin-inspect.BzUKaD4x.mjs:403:17 at async EnvironmentPluginContainer.transform (file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite/dist/node/chunks/dep-CMEinpL-.js:31351:14) at async loadAndTransform (file:///D:/xuexi/vue3/vue3/vue-cangku/node_modules/vite/dist/node/chunks/dep-CMEinpL-.js:26438:26) (x13)
最新发布
08-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值