vue cli3及4版本的全局引入scss

虽然是个简单的功能,但是发现按照很多网上的方法去操作并不能实现方法,所以还是写一下好了

需要借助 sass-resources-loader工具

npm install sass-resources-loader

在src\assets\css 目录中新建一个common.scss文件,并且声明一个变量

/* common.scss */
$main-color: darkolivegreen;

然后在项目的根目录下,新建vue.config.js文件,输入以下内容

// vue.config.js
module.exports = {
    chainWebpack: config => {
        const oneOfsMap = config.module.rule('scss').oneOfs.store
        oneOfsMap.forEach(item => {
            item
                .use('sass-resources-loader')
                .loader('sass-resources-loader')
                .options({
                    // Provide path to the file with resources
                    // 要公用的scss的路径
                    resources: './src/assets/css/common.scss'
                })
                .end()
        })
    }
}

接着在.vue文件中,就可以直接用color:$main-color了

// home.vue
<style lang="scss" scoped>
    .search{
        font-size: 12px;
        color: $main-color;
    }
</style>

其他版本的vue-cli和webpack参照官网配置:
https://www.npmjs.com/package/sass-resources-loader

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值