javascript - Vue cli 3项目别名src到@或~/不起作用
问题描述
我已经安装了这个项目,vue cli 3
但是随着项目的增长,组件的导入变得越来越难看,我最终导入了一个像
import Component from '../../../../components/folder/Component.vue'
我只想给 src 文件夹起别名并执行
import Component from '@components/folder/Component.vue'
我确实读过我必须修改vue.config.js
,我已经完成了,但错误是一样的
Module not found: Error: Can't resolve '@components/Permissions/PermissionsTable'
这是我的 vue.config.js
const path = require("path");
const vueSrc = "./src";
module.exports = {
runtimeCompiler: true,
css: {
modules: true
},
configureWebpack: {
resolve: {
alias: {
"@": path.join(__dirname, vueSrc)
}
}
}
};
我错过了什么吗?我还应该做什么?
解决方案
完整的例子:
const path = require("path");
const vueSrc = "./src";
module.exports = {
runtimeCompiler: true,
css: {
modules: true
},
configureWebpack: {
resolve: {
alias: {
"@": path.resolve(__dirname, vueSrc)
},
extensions: ['.js', '.vue', '.json']
}
}
};
尽管我不确定扩展是否可以解决您遇到的问题。如果您没有在导入定义中编写扩展名,这只会添加扩展名: https ://webpack.js.org/configuration/resolve/#resolveextensions
我有一种感觉,缺少/
. 因此,@components/Permissions/PermissionsTable
应该是@/components/Permissions/PermissionsTable
因为您没有/
在vueSrc
. 所以 webpack 会./src
像这样附加它:./srccomponents/Permissions/PermissionsTable
.
推荐阅读
- django - 如何调试从计算机到服务器的连接,服务器端
- javascript - Split array into chunks/bulks and made operations with them one by one
- php - 将链接添加到自定义表单
- java - 如何解决 Java 和 Spring Boot 中的 slf4j logback 类路径错误?
- android - 在模拟器和真实设备上使用语音识别时的“网络未连接”,尽管清单
- veins - 在 Veins 中发送消息和路边到路边 (R2R) 通信
- swift - 如何更改 SCNParticleSystem 中粒子的亮度?
- python - 使用Word2vec判断一组词中哪两个词最相似
- java - Sbt 解决错误版本的库
- google-apps-script - 谷歌表单提交后谷歌应用脚本触发两次