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 相关文章推荐
jquery scroll()区分横向纵向滚动条的方法
Apr 04 Javascript
node.js中的path.isAbsolute方法使用说明
Dec 08 Javascript
javascript转换日期字符串为Date日期对象的方法
Feb 13 Javascript
JS实现简单路由器功能的方法
May 27 Javascript
JavaScript模板引擎用法实例
Jul 10 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
Dec 10 Javascript
ashx文件获取$.ajax()方法发送的数据
May 26 Javascript
详解Vue中状态管理Vuex
May 11 Javascript
JS时间控制实现动态效果的实例讲解
Jul 31 Javascript
Angularjs实现上传图片预览功能
Sep 01 Javascript
Vue项目组件化工程开发实践方案
Jan 09 Javascript
基于Vue的商品主图放大镜方案详解
Sep 19 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检测字符串是否为UTF8编码的常用方法
2014/11/21 PHP
PHP删除指定目录中的所有目录及文件的方法
2015/02/26 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
2016/06/19 PHP
替换php字符串中的单引号为双引号的方法
2017/02/16 PHP
ThinkPHP5 的简单搭建和使用详解
2018/11/15 PHP
List the Stored Procedures in a SQL Server database
2007/06/20 Javascript
Windows8下搭建Node.js开发环境教程
2014/09/03 Javascript
js实现的捐赠管理完整实例
2015/01/20 Javascript
简介JavaScript中toTimeString()方法的使用
2015/06/12 Javascript
jQuery同步提交示例代码
2015/12/12 Javascript
javascript原型继承工作原理和实例详解
2016/04/07 Javascript
jQuery实现的鼠标经过时变宽的效果(附demo源码)
2016/04/28 Javascript
详解Vue Elementui中的Tag与页面其它元素相互交互的两三事
2018/09/25 Javascript
小试小程序云开发(小结)
2019/06/06 Javascript
vue中keep-alive、activated的探讨和使用详解
2020/07/26 Javascript
微信小程序实现简单的select下拉框
2020/11/23 Javascript
CentOS7下python3.7.0安装教程
2018/07/30 Python
Python使用selenium + headless chrome获取网页内容的方法示例
2019/10/16 Python
适合各种场合的美食礼品:Harry & David
2016/08/03 全球购物
猫途鹰英国网站:TripAdvisor英国(旅游社区和旅游评论)
2016/08/30 全球购物
英国最大的化装舞会服装网站:Fancydress.com
2017/08/15 全球购物
西班牙床垫网上商店:Colchones.es
2018/05/06 全球购物
什么是Rollback Segment
2013/04/22 面试题
亿阳信通股份有限公司C#笔试题
2016/12/06 面试题
程序员岗位职责
2013/11/11 职场文书
初婚初育证明
2014/01/14 职场文书
女儿十岁生日答谢词
2014/01/27 职场文书
中班中秋节活动反思
2014/02/18 职场文书
租房协议书样本
2014/08/20 职场文书
课程设计的心得体会
2014/09/03 职场文书
2014公安机关纪律作风整顿思想汇报
2014/09/13 职场文书
大学生暑期社会实践的个人总结!
2019/07/17 职场文书
彻底理解golang中什么是nil
2021/04/29 Golang
超级详细实用的pycharm常用快捷键
2021/05/12 Python
数据分析数据库ClickHouse在大数据领域应用实践
2022/04/03 MySQL
大型强子对撞机再次重启探索“第五种自然力”
2022/04/29 数码科技