详解nuxt sass全局变量(公共scss解决方案)


Posted in Javascript onJune 27, 2018

恩,经过朋友的帮助搞定的,因为 nuxt资料比较少的原因,很感谢  “包子”的帮助

注意  本案例  只是把你通用 的 比如 

$colour :#009688 #5FB878 #393D49 #1E9FFF #F7B824 #FF5722 ;

以上这种通用的变量抽出来,方便你在其他scss的样式里面调用

比如

li { 
 background: nth($colour,6) 
}

只存储变量,别放公共的样式进去切记公共的样式 你可以参考我之前的博客那种写法 

我直接上案例吧sass_3water.rar

案例里面有运行说明

我建议你还是跟我一步一步来走,比较刻骨铭心

第一步新建文件夹 assets然后新建两个scss文件 a1.scss cyc.scss

a1.scss

@charset "utf-8"; 
li { 
 span{color: nth($colour,6)} 
}

cyc.scss

@charset "utf-8"; 
//font 
body{ 
 background: yellow; 
} 
$colour :#009688 #5FB878 #393D49 #1E9FFF #F7B824 #FF5722 ;

第二 新建       pages/index.vue

<template> 
 <ul> 
  <li><span>1232323231</span></li> 
  <li><span>你好是多少打算的</span></li> 
 </ul> 
</template> 
 
<script> 
 import '~/assets/a1.scss';  
 export default { 
  name: 'date', 
  data () { 
   return { }//写死的数据 
  } 
 } 
</script> 
 
<style> 
</style>

第三 nuxt.config.js

const webpack = require('webpack'); 
 
module.exports = { 
 head: { 
  title: 'project', 
  meta: [ 
   { charset: 'utf-8' }, 
   { name: 'viewport', content: 'width=device-width, initial-scale=1' }, 
   { hid: 'description', name: 'description', content: 'Nuxt.js project' } 
  ] 
 }, 
 build: { 
  extend(config,ctx){ 
    const sassResourcesLoader = { 
    loader: 'sass-resources-loader', 
    options: { 
     resources: [ 
     'assets/cyc.scss' 
     ] 
    } 
    } 
    // 遍历nuxt定义的loader配置,向里面添加新的配置。 
    config.module.rules.forEach((rule) => { 
    if (rule.test.toString() === '/\\.vue$/') { 
     rule.options.loaders.sass.push(sassResourcesLoader) 
     rule.options.loaders.scss.push(sassResourcesLoader) 
    } 
    if (['/\\.sass$/', '/\\.scss$/'].indexOf(rule.test.toString()) !== -1) { 
     rule.use.push(sassResourcesLoader) 
    } 
    }) 
 
  }, 
 } 
}

第四  package.json  (ps:   package.json里面是我之前的配置 直接复制过来的 ,但是不碍事,照着做)

{ 
 "name": "test", 
 "dependencies": { 
 "axios": "^0.17.0", 
 "css-loader": "^0.28.7", 
 "jquery": "^3.2.1", 
 "mini-toastr": "^0.6.6", 
 "node-sass": "^4.5.3", 
 "nuxt": "^1.0.0-rc11", 
 "postcss-loader": "^2.0.8", 
 "sass-loader": "^6.0.6", 
 "sass-resources-loader": "^1.3.1", 
 "scss": "^0.2.4", 
 "style-loader": "^0.19.0", 
 "vue-notifications": "^0.9.0", 
 "vuex": "^3.0.1" 
 }, 
 "scripts": { 
 "dev": "nuxt", 
 "build": "nuxt build", 
 "start": "nuxt start", 
 "generate": "nuxt generate" 
 }, 
 "devDependencies": { 
 "coffee-loader": "^0.9.0", 
 "coffee-script": "^1.12.7", 
 "node-sass": "^4.5.3", 
 "pug": "^2.0.0-beta6", 
 "pug-loader": "^2.3.0", 
 "sass-loader": "^6.0.6" 
 } 
}

运行代码

这个是给你本地调试的  亲测 可以用  你会发现 我重复引用了  sass  这是因为 第二行  是官网给的, 我怕你更新失败了,所以让你在从淘宝更新一遍

npm install --save nuxt axios vuex 
npm install --save-dev pug@2.0.0-beta6 pug-loader coffee-script coffee-loader node-sass sass-loader 
npm install cnpm 
cnpm install --save node-sass sass-loader postcss-loader sass-resources-loader style-loader css-loader 
npm run dev//运行

好  到这里没了,调试是没问题了,如果你要打包成文件

npm run generate//打包 
//你打包好要放服务器上 不然 nuxt默认的那几个JS会报错 你就看不到效果了

要么你入口文件配置好

到这里就OK了,闲麻烦 你就直接从我开头给的链接进去下下来demo  直接运行就好了。

另外,因为我这个案例 是   引入 scss 的写法 ,如果你是写在style的  要这么写

<style lang="scss"> 
 li { 
  /*background: #fff;*/ 
  background: nth($colour,6) 
 } 
 
</style>

这里注意了  lang是   scss 不是sass

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

Javascript 相关文章推荐
javascript Array对象基础知识小结
Nov 16 Javascript
JavaScript全排列的六种算法 具体实现
Jun 29 Javascript
jQuery避免$符和其他JS库冲突的方法对比
Feb 20 Javascript
封装了一个支持匿名函数的Javascript事件监听器
Jun 05 Javascript
JavaScript实现twitter puddles算法实例
Dec 06 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
Nov 29 Javascript
JS实现的仿QQ空间图片弹出效果代码
Feb 23 Javascript
浅谈JSON.stringify()和JOSN.parse()方法的不同
Aug 29 Javascript
JavaScript 函数模式详解及示例
Sep 07 Javascript
微信小程序scroll-view组件实现滚动动画
Jan 31 Javascript
在vue项目中,使用axios跨域处理
Mar 07 Javascript
在weex中愉快的使用scss的方法步骤
Jan 02 Javascript
Vue引入sass并配置全局变量的方法
Jun 27 #Javascript
详解解决使用axios发送json后台接收不到的问题
Jun 27 #Javascript
vue中v-model的应用及使用详解
Jun 27 #Javascript
JS基于封装函数实现的表格分页完整示例
Jun 26 #Javascript
Vue实现todolist删除功能
Jun 26 #Javascript
AngularJS实现动态切换样式的方法分析
Jun 26 #Javascript
详解VUE自定义组件中用.sync修饰符与v-model的区别
Jun 26 #Javascript
You might like
咖啡常见的种类
2021/03/03 新手入门
PHP Header用于页面跳转要注意的几个问题总结
2008/10/03 PHP
php 小乘法表实现代码
2009/07/16 PHP
PHP多个版本的分析解释
2011/07/21 PHP
JS 分号引起的一段调试问题
2009/06/18 Javascript
js动态在form上插入enctype=multipart/form-data的问题
2012/05/24 Javascript
基于jquery自定义的漂亮单选按钮RadioButton
2013/11/19 Javascript
js与运算符和或运算符的妙用
2014/02/14 Javascript
iframe跨域通信封装详解
2015/08/11 Javascript
jquery中ajax跨域方法实例分析
2015/12/18 Javascript
Javascript之Math对象详解
2016/06/07 Javascript
浅谈Node.js:理解stream
2016/12/08 Javascript
javascript基于原型链的继承及call和apply函数用法分析
2016/12/15 Javascript
[Bootstrap-插件使用]Jcrop+fileinput组合实现头像上传功能实例代码
2016/12/20 Javascript
从零学习node.js之mysql数据库的操作(五)
2017/02/24 Javascript
微信小程序 登录的简单实现
2017/04/19 Javascript
JS中将多个逗号替换为一个逗号的实现代码
2017/06/23 Javascript
关于RxJS Subject的学习笔记
2018/12/05 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
JavaScript 接口原理与用法实例详解
2020/05/12 Javascript
Python实现字符串格式化输出的方法详解
2017/09/20 Python
使用Python发现隐藏的wifi
2020/03/04 Python
基于python计算并显示日间、星期客流高峰
2020/05/07 Python
python中取绝对值简单方法总结
2020/07/24 Python
Python如何实现感知器的逻辑电路
2020/12/25 Python
我的applet原先好好的, 一放到web server就会有问题,为什么?
2016/05/10 面试题
Ref与out有什么不同
2012/11/24 面试题
幼儿园校车司机的岗位职责
2014/01/30 职场文书
《孔繁森》教学反思
2014/04/17 职场文书
建筑工地门卫岗位职责
2014/04/30 职场文书
国际贸易求职信
2014/07/05 职场文书
志愿者爱心公益活动策划方案
2014/09/15 职场文书
党的群众路线教育实践活动领导班子整改方案
2014/10/25 职场文书
毕业生自荐信范文
2015/03/05 职场文书
Python scrapy爬取起点中文网小说榜单
2021/06/13 Python
一文搞懂MySQL索引页结构
2022/02/28 MySQL