webpack中 resolve.alias 配置,@import相关踩坑


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把@ 解析为相对路径


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM