(编辑:jimmy 日期: 2024/11/15 浏览:2)
开发场景
当使用 Vue 框架进行项目开发时,在 vue.config.js 中配置好了路径别名后,到其他页面引入组件、引入 css 、引入静态文件路径时,使用路径别名不会智能提示路径。虽然在 vscode 中安装了Path Intellisense 插件,但是并无作用。这样容易出现路径拼写错误的低能问题,同时也会造成开发效率降低
解决方案
在项目 package.json 所在同级目录下创建文件 jsconfig.json, 来解决别名路径不提示的问题。(配置完保存文件后需要重启编辑器才能生效。而且它只能识别 .vue 和 .js结尾的文件,css文件与其他的静态文件依然没有提示, 不推荐!!!)
// .jsconfig.json { "compilerOptions": { "baseUrl": ".", "paths": { "@/\*": \['src/\*'\], "a/\*": \["src/assets/\*"\], "c/\*": \["src/components/\*"\], ... } }, "include": \["./src/\*\*/\*.vue", "./src/\*\*/\*.js"\], "exclude": \["node\_modules"\] }
在 vscode 的 setting.json 中给 Path Intellisence 配置(该方案是最优选,能识别任意格式文件,覆盖率最广。当别名发生改变时只需修改配置即可)
// setting.json "path-intellisense.mappings": { "a": "${workspaceRoot}/src", "c": "${workspaceRoot}/src/components", ... }
其他网友解决方法
项目中webpack.base.conf.js配置自定义别名
resolve: { extensions: ['.js', '.vue', '.json'], alias: { 'vue$': 'vue/dist/vue.esm.js', '@': resolve('src'), 'styles': resolve('src/assets/styles') } },
在项目根目录下创建jsconfig.json文件,配置如下:
{ "compilerOptions": { "baseUrl": ".", "paths": { "@/*": [ "src/*" ], // 配置自定义的别名匹配路径 "styles/*": [ "src/assets/styles/*" ] }, "target": "ES6", "module": "commonjs", "allowSyntheticDefaultImports": true }, "include": [ "src/**/*" ], "exclude": [ "node_modules", "dist" ] }