美文网首页vuevuealready
vue 全局引入公共的scss

vue 全局引入公共的scss

作者: 李小白呀 | 来源:发表于2022-07-13 18:13 被阅读0次

    main.js 只能import css文件 scss文件不能直接import,全局引入公共的scss方法:
    步骤一:下载node-sass sass-loader

    npm i -D sass-loader@8.x
    
    npm i node-sass@4.14.1
    

    步骤二:配置 vue.config.js 文件

    // css相关配置
      css: {
        // css预设器配置项
        loaderOptions: {
          sass: {
            prependData: `@import "@/assets/scss/_variable.scss";` //引入全局变量   
          }
        }
      }
    
    

    由于sass-loader的版本不同,这里可能会报错,不同的版本对应的关键字不一样:
    sass-loader v8-中,关键字为 “ data ”
    sass-loader v8中,关键字为 “ prependData ”
    sass-loader v10+中,关键字为 “ additionalData ”

    Sass @mixin 与 @include
    @mixin 指令允许我们定义一个可以在整个样式表中重复使用的样式。
    @include 指令可以将混入(mixin)引入到文档中。
    一般引入的scss文件如下

    @mixin center() {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    

    在各文件中使用方式:此时是不需要在js 中import 可以直接使用

    div {
        width: 100px;
        height: 100px;
        @include center;
    }
    

    经过编译后则会被翻译成

    div {
        width: 100px;
        height: 100px;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    

    参考:
    如何在vue项目中引入scss,并使用scss样式
    vue 全局引入公共的scss 和 @mixin 与 @include的使用
    vue2/vue3中样式scss的mixin用法

    相关文章

      网友评论

        本文标题:vue 全局引入公共的scss

        本文链接:https://www.haomeiwen.com/subject/hfstirtx.html