Vue中使用webpack别名的方法实例详解


Posted in Javascript onJune 19, 2018

在工作中,我们经常会写出这种代码:

import MHeader from '../../components/m-header/m-header'
@import "../../common/stylus/variable"
@import "../../common/stylus/mixin"

即,需要引入公共文件,但是公共文件的文件路径里当前文件很远,那么就会形成上面示例中的那种路径很长的情况。

而因为文件目录是约定俗成的,不可轻易更改,无法修改相对路径。那么该怎么办呢?

大家都知道,Vue中的js可以通过配置webpack别名(alias)来避免一长串的路径引用,即:

// target
import MHeader from 'components/m-header/m-header'
//webpack.base.conf.js
alias: {
  '@': resolve('src'),
  'common': resolve('src/common'),
  'components': resolve('src/components')
}

但是,如果直接把这种方法用在css中,则会报错:

@import "common/stylus/variable"  // error
@import "common/stylus/mixin"    // error

其实,这种方法没有错,只不过webpack对css的处理不同于js。

在js中,webpack对路径进行处理时,自动将没有路径标识(/ ,./,../)的第一个文件夹名当做webpack别名处理。如,第一个文件夹名为components,那么webpack会自动在alias中搜索有没有对应的别名,如果有,则直接替换路径;没有则报错。

在css中,webpack正常情况下,不会对路径进行处理。如果你想让webpack对路径进行处理,那么,可以在路径前标识~,如下:

@import "~common/stylus/variable"
@import "~common/stylus/mixin"

相当于通过添加~表示common是webpack别名而不是表示一个文件夹名。

正确使用webapck别名可以大大缩短引入文件的时间。

总结

以上所述是小编给大家介绍的Vue中使用webpack别名的方法实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript奇异的arguments分析
Oct 20 Javascript
jQuery实战之仿淘宝商城左侧导航效果
Apr 12 Javascript
更换select下拉菜单背景样式的实现代码
Dec 20 Javascript
jquery购物车实时结算特效实现思路
Sep 23 Javascript
jQuery获取剪贴板内容的方法
Jun 16 Javascript
js实现带三角符的手风琴效果
Mar 01 Javascript
微信小程序开发之toast提示插件使用示例
Jun 08 Javascript
Three.js如何实现雾化效果示例代码
Sep 27 Javascript
javascript将json格式数组下载为excel表格的方法
Dec 22 Javascript
详解webpack-dev-server 设置反向代理解决跨域问题
Apr 18 Javascript
jQuery插件jsonview展示json数据
May 26 jQuery
three.js利用卷积法如何实现物体描边效果
Nov 27 Javascript
vue mounted组件的使用
Jun 18 #Javascript
基于rollup的组件库打包体积优化小结
Jun 18 #Javascript
详解组件库的webpack构建速度优化
Jun 18 #Javascript
Javascript实现异步编程的过程
Jun 18 #Javascript
详解JS函数stack size计算方法
Jun 18 #Javascript
jQuery使用动画队列自定义动画操作示例
Jun 16 #jQuery
node.js自动上传ftp的脚本分享
Jun 16 #Javascript
You might like
用PHP实现小型站点广告管理
2006/10/09 PHP
解决dede生成静态页和动态页转换的一些问题,及火车采集入库生成动态的办法
2007/03/29 PHP
php通过baihui网API实现读取word文档并展示
2015/06/22 PHP
PHP中检查isset()和!empty()函数的必要性
2019/02/13 PHP
基于Laravel-admin 后台的自定义页面用法详解
2019/09/30 PHP
Nigma vs Liquid BO3 第一场2.14
2021/03/10 DOTA
jQuery 创建Dom元素
2010/05/07 Javascript
JS基础之undefined与null的区别分析
2011/08/08 Javascript
jquery验证手机号码、邮箱格式是否正确示例代码
2013/07/28 Javascript
原生js实现类似弹窗抖动效果
2015/04/02 Javascript
JavaScript包装对象使用详解
2015/07/09 Javascript
JavaScript实现向右伸出的多级网页菜单效果
2015/08/25 Javascript
JS判断日期格式是否合法的简单实例
2016/07/11 Javascript
jquery自定义表单验证插件
2016/10/12 Javascript
webpack+vue.js实现组件化详解
2016/10/12 Javascript
js移动焦点到最后位置的简单方法
2016/11/25 Javascript
Bootstrap框架实现广告轮播效果
2016/11/28 Javascript
Vue系列:通过vue-router如何传递参数示例
2017/01/16 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
vue2.0页面前进刷新回退不刷新的实现方法
2018/07/31 Javascript
Vue项目安装插件并保存
2019/01/28 Javascript
Vue移动端右滑屏幕返回上一页附源码下载
2019/06/26 Javascript
微信小程序实现购物车代码实例详解
2019/08/29 Javascript
[46:57]EG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python实现保存网页到本地示例
2014/03/16 Python
详解Python中time()方法的使用的教程
2015/05/22 Python
python实现打砖块游戏
2020/02/25 Python
详解H5本地储存Web Storage
2017/07/03 HTML / CSS
自荐信的禁忌和要点
2013/10/15 职场文书
售后服务经理岗位职责范本
2014/02/22 职场文书
实习指导老师评语
2014/04/26 职场文书
英语感谢信范文
2015/01/20 职场文书
爱心助学感谢信
2015/01/21 职场文书
我是特种兵观后感
2015/06/11 职场文书
工商行政处罚决定书
2015/06/24 职场文书
2019年市场部个人述职报告(三篇)
2019/10/23 职场文书