首页 > 其他分享 >记录一下vue如果全局引入scss变量

记录一下vue如果全局引入scss变量

时间:2023-11-27 17:22:06浏览次数:22  
标签:scss __ style vue set path 全局 dirname

开始

首先一些普通的css,可以在App.vue中引入
image

然后项目中会经常用到一些功能型的scss,比如mixin,和函数等,这个时候在main.js 和app.vue 是无效的。

首先查看自己的 sass和sass-loader版本,注意sass-loader的安装版本,如果是v8的版本使用prependDatea,以上的版本使用additionalData(翻译:额外的)的配置项

先创建variables.scss文件
image

在vue.config.js配置文件中添加如下代码:

const { defineConfig } = require('@vue/cli-service')
const path = require('path')
module.exports = defineConfig({
  //使用es6相关的依赖
  transpileDependencies: true,
   // 关闭检查代码格式
   lintOnSave: true,
   chainWebpack: config => {
    // eslint-disable-next-line no-unused-expressions
    config.resolve.alias
      .set('@', path.join(__dirname, 'src'))
      .set('_views', path.join(__dirname, 'src/views'))
      .set('_components', path.join(__dirname, 'src/components'))
      .set('_api', path.join(__dirname, 'src/api'))
      .set('_utils', path.join(__dirname, 'src/utils'))
      .set('_style', path.join(__dirname, 'src/style'))
  },
  css: {
    loaderOptions: {
      scss: {
        additionalData: `
        @import "@/style/common.scss";
        @import '@/style/class.scss';
        @import '@/style/variable.scss';
        `,
      },
    },
  }
})
 css: {
    loaderOptions: {
      scss: {
        // 如果版本较低请使用prependDatea
        additionalData: `
        @import '@/style/variable.scss';
        `,
      },
    },
  }

配置好后,就可以在各个组件中使用了!

标签:scss,__,style,vue,set,path,全局,dirname
From: https://www.cnblogs.com/guozhiqiang/p/17859858.html

相关文章

  • vue前端截图
    <template><divclass="bigbox"> <divclass="box"ref="imageTest"> <divclass="boxTop"> 13653197159邀请您注册 <spanstyle="color:#5FFFB7;">金猫矿池</span> </div>......
  • vue3使用kindeditor富文本编辑器组件,支持上传图片(接口或base64)
    参考文章:https://blog.csdn.net/qq_27936291/article/details/1247689891.安装插件npmi@zhj-target/vue3-kind-editor--save或者yarnadd@zhj-target/vue3-kind-editor2.在vue项目中使用importVue3KindEditorfrom'@zhj-target/vue3-kind-editor'conststate=re......
  • vue中的watch监听器
    方法一:当监听某一属性的变化时,建议直接使用函数写法constvm=newVue({el:'#app',data:{username:''},watch:{username(newVal,oldVal){console.log(newVal,oldVal)}}}) 方法二:当页面初始化需要监听一......
  • vue导入excel表格
    1.vue导入模版信息。进行数据操作首先要安装 npminstallfile-saver  npminstallxlsx  npminstallscript-loader,在src下面创建一个excel文件夹,查创建2个js(Blob.js,Export2Excel.js)utils/vendor/Export2Excel.js文件/*eslint-disable*/require('script-loader!f......
  • Vue-加入购物车-判断token添加登录提示
    Vue-加入购物车-判断token添加登录提示目标:给未登录的用户,添加登录提示说明:加入购物车,是一个登录后的用户才能进行的操作,所以需要进行鉴权判断,判断用户token是否存在若存在:继续加入购物车操作不存在:提示用户未登录,引导到登录页,登录完回跳addCart(){//判断token......
  • Vue中自定义组件监听事件传参
    自定义数字框组件如下<template><divclass="count-box"><button@click="handleSub"class="minus">-</button><input:value="value"@change="handleChange"class="inp"typ......
  • vue实现页面全屏、局部全屏等多方式全屏
    1、vuex创建全局变量在store/index中:importVuexfrom'vuex'Vue.use(Vuex)constuser={state:{//全屏fullscreen:false,},mutations:{//全屏SET_FULLSCREEN:(state,fullscreen)=>{state.fullscreen=fullscreen},},act......
  • 安装 Vue 开发者工具:装插件调试 Vue 应用
    (1)通过谷歌应用商店安装(国外网站)(2)极简插件:下载→ 开发者模式→ 拖拽安装 → 插件详情允许访问文件         https://chrome.zzzmh.cn/index下载的文件,解压。chrome浏览器,右上角点击-》更多工具=》扩展程序。打开开发者模式将解压的文件拖到空白区......
  • vue2跨级组件传值
    //祖先组件importSonfrom'./Son'exportdefault{components:{Son},provide(){return{money:1000000000}}}子孙组件<template> <div>  孙子组件  <p>这个是爷爷传给我的钱:{{money}}</p> </div&......
  • vue2兄弟组件传值
    //1创建一个公共的vue实例(bus)importVuefrom'vue'constbus=newVue()exportdefaultbus<!-- brother1--><template> <div>  兄弟1组件  <p>   <button@click="send">传值给兄弟2</button>  </p&......