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 相关文章推荐
jQuery Tips 为AJAX回调函数传递额外参数的方法
Dec 28 Javascript
基于jquery的放大镜效果
May 30 Javascript
基于jquery的DIV随滚动条滚动而滚动的代码
Jul 20 Javascript
jquery带翻页动画的电子杂志代码分享
Aug 21 Javascript
js弹出对话框方式小结
Nov 17 Javascript
获取select的value、text值的简单示例(jquery与javascript)
Dec 07 Javascript
jQuery代码实现实时获取时间
Jan 29 Javascript
js实现4个方向滚动的球
Mar 06 Javascript
angular2中Http请求原理与用法详解
Jan 11 Javascript
基于ionic实现下拉刷新功能
May 10 Javascript
vue项目中,main.js,App.vue,index.html的调用方法
Sep 20 Javascript
p5.js临摹动态图形实现方法详解
Oct 23 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模板引擎SMARTY
2006/10/09 PHP
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
php microtime获取浮点的时间戳
2010/02/21 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
2017/10/25 PHP
解决在laravel中auth建立时候遇到的问题
2019/10/15 PHP
Jquery的hide及toggle方法让超链接慢慢消失
2013/09/06 Javascript
百度移动版的url编码解码示例
2014/04/29 Javascript
jQuery使用post方法提交数据实例
2015/03/25 Javascript
Javascript小技能总结(推荐)
2016/06/02 Javascript
AngularJS基础 ng-open 指令简单实例
2016/08/02 Javascript
jquery dataview数据视图插件使用方法
2016/12/23 Javascript
使用jQuery实现页面定时弹出广告效果
2017/08/24 jQuery
解决Angular.js中使用Swiper插件不能滑动的问题
2018/02/26 Javascript
对angularJs中ng-style动态改变样式的实例讲解
2018/09/30 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
Next.js实现react服务器端渲染的方法示例
2019/01/06 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
2019/10/30 Javascript
JS前端面试必备——基本排序算法原理与实现方法详解【插入/选择/归并/冒泡/快速排序】
2020/02/24 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
js节流防抖应用场景,以及在vue中节流防抖的具体实现操作
2020/09/21 Javascript
Python语言的12个基础知识点小结
2014/07/10 Python
使用Python编写一个模仿CPU工作的程序
2015/04/16 Python
Python实现计算两个时间之间相差天数的方法
2017/05/10 Python
一条命令解决mac版本python IDLE不能输入中文问题
2018/05/15 Python
Django中celery执行任务结果的保存方法
2019/07/12 Python
Python基础之字典常见操作经典实例详解
2020/02/26 Python
浅谈Python 命令行参数argparse写入图片路径操作
2020/07/12 Python
如何利用python正则表达式匹配版本信息
2020/12/09 Python
HTML5+CSS3 实现灵动的动画 TAB 切换效果(DEMO)
2017/09/15 HTML / CSS
提供世界各地便宜的机票:Sky-tours
2016/07/21 全球购物
高中生毕业自我鉴定
2013/10/10 职场文书
2015年乡镇民政工作总结
2015/05/13 职场文书
法律意见书范文
2015/05/20 职场文书
我的生日感言
2015/08/03 职场文书
电台广播稿范文
2015/08/19 职场文书
创业计划书之服装
2019/10/07 职场文书