Vue项目中应用预处理器,可以有效减少css代码量, 推荐使用Sass、Scss、Less预处理器。在创建项目的时候可以选择预处理器 (Sass/Less/Stylus)。

如果当时没有选择,内置的 webpack 仍然会被预配置为可以完成所有的处理,也可以手动安装相应的 webpack loader:

# Sass
npm install -D sass-loader node-sass# Less
npm install -D less-loader less# Stylus
npm install -D stylus-loader stylus

然后,就可以导入相应的文件类型,或在 .vue 文件中这样来使用:

<style lang="scss">$color: red;
</style>

下面主要讲解一下vue中应用less或者sass的方法,以less为例(style.less)。

写在 vue 中的 less

所有vue文件的

,会被vue-loader处理编译到一个css文件中,最终自动通过link标签写入index.html(在vue-loader.conf.js中配置)

<style scoped lang="less">
.notFoundPage {background-color: #0a8acd;color: #fff;position: relative;h1 {font-weight: 500;}
}
</style>

<link href="/static/css/app.21d3ff57a1596ef90908ba816fbb9496.css" rel="stylesheet">

对于外 less 文件

在main.js中import style.less 。

此时webpack会把style.less和各个vue文件的less部分一起编译到同一个css文件,并在index.html的link中自动引入。

在webpack的入口文件entry中加上style.less,编译完的出口文件会被自动注入到index.html文件中。

entry: {app: './src/main.js',style: './src/style/style.less'
},

<script type="text/javascript" src="/static/js/style.c67fefaf3f60c5ca074a.js"></script>

注:在vue2.x的webpack.base.conf.js:

{test: /\.vue$/,loader: 'vue-loader',options: vueLoaderConfig
},

以上是针对.vue文件的处理规则,其中vueLoaderConfig是vue-cli自己定义的加载器,专门处理css样式。
vueLoaderConfig引用的utils.js:

return {css: generateLoaders(),postcss: generateLoaders(),less: generateLoaders('less'),sass: generateLoaders('sass', { indentedSyntax: true }),scss: generateLoaders('sass'),stylus: generateLoaders('stylus'),styl: generateLoaders('stylus')}

所以不需要再在rules里写.css .less 的处理规则。

Vue 应用 Sass、Scss、Less 和 Stylus相关推荐

  1. vue-cli 3.0集成sass/scss到vue项目

    尝鲜使用vue-cli 3.0.0-beta.6,很容易就可以完成scss到vue项目中. vue-cli 3提供了两种方式集成sass/scss: 创建项目是选择预处理器sass 手动安装sass- ...

  2. [vue] 如何引入scss?引入后如何使用?

    [vue] 如何引入scss?引入后如何使用? 安装scss依赖包: npm install sass-loader --save-dev npm install node-sass --save-d ...

  3. CSS预处理器语言:Sass、LESS、Stylus

    CSS预处理器语言:Sass.LESS.Stylus Sass 和 Less 都使用的是标准的 CSS 语法.默认 Sass 使用 .sass 扩展名, Less 使用 .less 扩展名,Stylu ...

  4. Sass、LESS 和 Stylus区别总结

    CSS 预处理器技术已经非常的成熟了,而且也涌现出了越来越多的 CSS 的预处理器框架.本文便总结下 Sass.Less CSS.Stylus这三个预处理器的区别和各自的基本语法. 1.什么是 CSS ...

  5. 【面试总结系列】CSS 预编译器 Sass、Less、Stylus 三者之间的比较详解

    想要查看关于 CSS 的相关面试题,请移步至 面试题 - CSS 篇 查看,其他内容面试题请移步至 2021 最新最全的前端面试题集锦 查看. CSS-当前主流的三种预编译器 什么是预编译器: CSS ...

  6. CSS预处理器——Sass、LESS和Stylus区别及联系

    一.什么是CSS预处器 CSS预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为CSS增加了一些编程的特性,将CSS作为目标生成文件,然后开发者就只要使用这种语言进行编码工作.通俗的说 ...

  7. css预处理器sass/scss入门

    sass/scss入门 一.css预处理器是什么? 二.为什么要用css预处理器? 三.sass.less.stylus的区别? 四.sass与scss 五.sass安装 六.sass常见用法 6.1 ...

  8. 一、SASS(SCSS)

    文章目录 一.为什么有出现css预处理器 二.css预处理器(Sass/Scss.Less......)是什么? 三.Sass和Scss的关系 四.配置Sass编译环境 五.Sass语法拓展 5.1 ...

  9. 预处器的对比——Sass、LESS和Stylus

    本文根据Johnathan Croom的<Sass vs. LESS vs. Stylus: Preprocessor Shootout>所译,整个译文带有我们自己的理解与思想,如果译得不 ...

  10. CSS预处理器的对比 — Sass、Less和Stylus

    本文根据Johnathan Croom的<sass vs. less vs. stylus: Preprocessor Shootout>所译,整个译文带有我们自己的理解与思想,如果译得不 ...

最新文章

  1. WebForm页面生命周期及asp.net运行机制
  2. python实训项目-Python开发基础-项目实训-在线投票系统.pptx
  3. [armv9]-ARMV8/ARMV9安全架构介绍(ARMv9 CCA)
  4. 126篇殿堂级深度学习论文分类整理 从入门到应用(上)
  5. 从黄昏到夜暮 2021-04-15
  6. 业务团队如何统一架构设计风格?
  7. CSS+JS灰色树型菜单导航代码
  8. laravel使用migrate操作数据库迁移
  9. 推荐两个检索和分类小工具Carrot2 OSS
  10. python字符串_Python字符串格式化%s%d%f详解
  11. 【FTP】org.apache.commons.net.ftp.FTPClient实现复杂的上传下载,操作目录,处理编码...
  12. Linux流行病毒家族清除方法集锦
  13. python爬取js script中的变量_BeautifulSoup抓取js变量
  14. python中flush什么意思,Python的file.flush()到底在做什么?
  15. PyQt5,资源文件 .qrc 的使用
  16. 基于Layabox引擎的魔塔微信小游戏设计与实现
  17. ise 检查文件语法错误
  18. 中物院计划建国内一流科学仪器研发基地
  19. 为什么计算机连不上无线网络,笔记本无线连不上是什么原因_为什么笔记本电脑连不上wifi-win7之家...
  20. 点云外包矩形框(六面体)

热门文章

  1. 阿尔伯塔大学博士毕业论文:基于图结构的自然语言处理
  2. 程序员也可以很浪漫!
  3. 线性回归api初步使用
  4. 2021-04-06 符号执行是啥?
  5. 21个深度学习调参技巧,一定要看到最后一个
  6. 场景几何约束在视觉定位中的探索
  7. 4.1ASP.NET Core请求过程「深入浅出ASP.NET Core系列」
  8. spark-shuffle分析
  9. selenium 常用操作
  10. Flutter 布局控件完结篇