vue-cli 2.*中导入公共less文件的方法步骤


Posted in Javascript onNovember 22, 2018

在新版的Vue CLI 3中,如何导入公共less文件在文档里已经描述的很清楚了,但是在2.*的版本中,我没有查到相关的办法,网友的办法又相当复杂,于是我推荐给大家一个很简单的办法。

首先,会用到webpack中的资源预处理器Style Resources Loader,所以需要:

npm i style-resources-loader -D

然后在build/utils.js文件中可以找到CSS预处理器的实现方式:

function generateLoaders (loader, loaderOptions) {
 const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]

 if (loader) {
  loaders.push({
  loader: loader + '-loader',
  options: Object.assign({}, loaderOptions, {
   sourceMap: options.sourceMap
  })
  })
 }

 // Extract CSS when that option is specified
 // (which is the case during production build)
 if (options.extract) {
  return ExtractTextPlugin.extract({
  use: loaders,
  fallback: 'vue-style-loader'
  })
 } else {
  return ['vue-style-loader'].concat(loaders)
 }
 }

 // https://vue-loader.vuejs.org/en/configurations/extract-css.html
 return {
 css: generateLoaders(),
 postcss: generateLoaders(),
 less: generateLoaders('less'),
 sass: generateLoaders('sass', { indentedSyntax: true }),
 scss: generateLoaders('sass'),
 stylus: generateLoaders('stylus'),
 styl: generateLoaders('stylus')
 }
}

简单的看下来就是需要哪种类型的样式就去加载对应的预处理器,因此只需要在加载less文件的情况下,多加一种Style Resources Loader预处理器就可以解决问题,所以只要加上如下代码,即可实现。

if (loader) {
  ...
 }
 if(loader == 'less'){
  loaders.push({
   loader: 'style-resources-loader',
   options: {
    patterns: path.resolve(__dirname, '../src/assets/config/*.less')
   }
  })
 }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
发两个小东西,ASP/PHP 学习工具。 用JavaScript写的
Apr 12 Javascript
JS 巧妙获取剪贴板数据 Excel数据的粘贴
Jul 09 Javascript
json格式化/压缩工具 Chrome插件扩展版
May 25 Javascript
node.js中的fs.readFile方法使用说明
Dec 15 Javascript
js点击选择文本的方法
Feb 09 Javascript
JavaScript中的DSL元编程介绍
Mar 15 Javascript
教你用javascript实现随机标签云效果_附代码
Mar 16 Javascript
JavaScript数组去重的几种方法效率测试
Oct 23 Javascript
详解js中call与apply关键字的作用
Nov 21 Javascript
vue router-link传参以及参数的使用实例
Nov 10 Javascript
javascript将json格式数组下载为excel表格的方法
Dec 22 Javascript
JavaScript函数节流和函数去抖知识点学习
Jul 31 Javascript
vue全局使用axios的方法实例详解
Nov 22 #Javascript
vue中的ref和$refs的使用
Nov 22 #Javascript
浅析vue 函数配置项watch及函数 $watch 源码分享
Nov 22 #Javascript
原生JS实现手动轮播图效果实例代码
Nov 22 #Javascript
js实现按钮开关单机下拉菜单效果
Nov 22 #Javascript
vue+node实现图片上传及预览的示例方法
Nov 22 #Javascript
微信上传视频文件提示(推荐)
Nov 22 #Javascript
You might like
php数字游戏 计算24算法
2012/06/10 PHP
php实现向javascript传递数组的方法
2015/07/27 PHP
php设计模式之工厂方法模式分析【星际争霸游戏案例】
2020/01/23 PHP
OfflineSave离线保存代码再次发布使用说明
2007/05/23 Javascript
Js四则运算函数代码
2012/07/21 Javascript
关于img的href和src取变量及赋值的方法
2014/04/28 Javascript
浅谈javascript 函数内部属性
2015/01/21 Javascript
详解AngularJS中自定义过滤器
2015/12/28 Javascript
一种新的javascript对象创建方式Object.create()
2015/12/28 Javascript
基于BootStrap环境写jQuery tabs插件
2016/07/12 Javascript
javascript弹出带文字信息的提示框效果
2016/07/19 Javascript
浅谈JavaScript 数据属性和访问器属性
2016/09/01 Javascript
详解js前端代码异常监控
2017/01/11 Javascript
js原生Ajax的封装和原理详解
2017/03/11 Javascript
详解打造 Vue.js 可复用组件
2017/03/24 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
2018/08/14 Javascript
30分钟用Node.js构建一个API服务器的步骤详解
2019/05/24 Javascript
基于JS实现操作成功之后自动跳转页面
2020/09/25 Javascript
Vue router传递参数并解决刷新页面参数丢失问题
2020/12/02 Vue.js
Python的Django中将文件上传至七牛云存储的代码分享
2016/06/03 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
2018/02/22 Python
Python控制键盘鼠标pynput的详细用法
2019/01/28 Python
python调用c++ ctype list传数组或者返回数组的方法
2019/02/13 Python
python实现把两个二维array叠加成三维array示例
2019/11/29 Python
Python的pygame安装教程详解
2020/02/10 Python
LUISAVIAROMA德国官网:时尚奢侈品牌购物网站
2020/11/12 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
先进个人事迹材料
2014/01/25 职场文书
考试诚信承诺书
2014/05/23 职场文书
财务会计专业自荐书
2014/06/30 职场文书
入党积极分子学习党的纲领思想汇报
2014/09/13 职场文书
鸟的天堂导游词
2015/01/31 职场文书
离婚起诉书范文2015
2015/05/19 职场文书
2016校本研修培训心得体会
2016/01/08 职场文书
MySQL中int (10) 和 int (11) 的区别
2022/01/22 MySQL
Python 图片添加美颜效果
2022/04/28 Python