1、在使用webpack打包项目时,可以在配置文件中配置resolve.alias来定义一些绝对路径,方便在项目中灵活使用路径,举例如下:
resolve: {
extensions: [‘.js‘, ‘.vue‘],
alias: {
‘@‘: path.resolve(__dirname, ‘src‘),
‘@scss‘: path.resolve(__dirname, ‘src‘, ‘scss‘),
'@/common': path.join(process.cwd(), 'client/modules/common'),
}
}
2、配置之后,引用会发生如下变化:
// 相对路径引入
import hongAlert from ‘./../src/scss/test.less‘;
@import ‘./../common/styles/test.less‘; // 配置后改写为绝对路径引入
import hongAlert from ‘@less/test.scss‘;
@import '~@/common/styles/test.less';
注意:scss和less文件使用绝对路径引入时,需要在引入路径前面加上‘~’,不然会报错,找不到对应路径;
波浪号是为了防止css-loader把@ 解析为相对路径