详解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 相关文章推荐
IE6中链接A的href为javascript协议时不在当前页面跳转
Jun 05 Javascript
jquery实现点击页面计算点击次数
Jan 23 Javascript
javascript操作ul中li的方法
May 14 Javascript
JavaScript实现向右伸出的多级网页菜单效果
Aug 25 Javascript
JS中Json数据的处理和解析JSON数据的方法详解
Jun 29 Javascript
判断数组的最佳方法(推荐)
Oct 11 Javascript
9个让JavaScript调试更简单的Console命令
Nov 14 Javascript
Centos6.8下Node.js安装教程
May 12 Javascript
Js中将Long转换成日期格式的实现方法
Jun 05 Javascript
layui 设置table 行的高度方法
Aug 17 Javascript
详解Webpack-dev-server的proxy用法
Sep 08 Javascript
vue elementUI 表单校验的实现代码(多层嵌套)
Nov 06 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
thinkphp连贯操作实例分析
2014/11/22 PHP
php实现将上传word文件转为html的方法
2015/06/03 PHP
php中smarty区域循环的方法
2015/06/11 PHP
CI(Codeigniter)的Setting增强配置类实例
2016/01/06 PHP
PHP互换两个变量值的方法(不用第三变量)
2016/11/14 PHP
php图像验证码生成代码
2017/06/08 PHP
Yii框架日志记录Logging操作示例
2018/07/12 PHP
php 使用 __call实现重载功能示例
2019/11/18 PHP
javascript prototype,executing,context,closure
2008/12/24 Javascript
Mootools 1.2教程(3) 数组使用简介
2009/09/14 Javascript
jquery each()源代码
2011/02/14 Javascript
三级下拉菜单的js实现代码
2011/05/23 Javascript
json的前台操作和后台操作实现代码
2012/01/20 Javascript
Javascript中引用示例介绍
2014/02/21 Javascript
javascript闭包传参和事件的循环绑定示例探讨
2014/04/17 Javascript
javascript解决小数的加减乘除精度丢失的方案
2016/05/31 Javascript
详解nodeJS之路径PATH模块
2017/05/31 NodeJs
详解如何实现Element树形控件Tree在懒加载模式下的动态更新
2019/04/25 Javascript
[03:49]DOTA2 2015国际邀请赛中国区预选赛第二日现场百态
2015/05/27 DOTA
[46:00]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#4EG VS Fnatic第一局
2016/03/03 DOTA
Python转码问题的解决方法
2008/10/07 Python
python命令行参数sys.argv使用示例
2014/01/28 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
详解Python的数据库操作(pymysql)
2019/04/04 Python
Python实现TCP探测目标服务路由轨迹的原理与方法详解
2019/09/04 Python
python plotly画柱状图代码实例
2019/12/13 Python
关于HTML5+ API plusready的兼容问题
2020/11/20 HTML / CSS
HTML5在手机端实现视频全屏展示方法
2020/11/23 HTML / CSS
美国最大和最受信任的二手轮胎商店:Bestusedtires.com
2020/06/02 全球购物
某公司部分笔试题
2013/11/05 面试题
服装电子商务创业计划书
2014/01/30 职场文书
电力培训心得体会
2014/09/02 职场文书
主持稿开场白
2015/06/01 职场文书
羊脂球读书笔记
2015/06/30 职场文书
董事长助理工作总结2015
2015/07/23 职场文书
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
2022/08/14 Servers