SCSS全局变量的配置(vue3+vite)

首先在src文件夹下新建一个var.scss文件,放置scss变量。

$fontSizeTable: '0.6rem';
$borderRadius: '0.8rem';
$fontSize: '0.9rem';
$lineHeight: '1.5rem';

直接引入该文件到app.vue或者main.js是不生效的,我们需要将其引入到每一个组件的scss中去,手动引入也可以实现。
这里我们采用vue相关的配置自动引入
在根文件夹下寻找vite.config.ts,如果找不到则新建一个,如果已有可以跳过这一步。

一 新建vite.config.ts

1.1 新建vite.config.ts文件

在根文件夹下新建vite.config.ts文件,在文件中输入以下代码。

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
export default () => {
    return defineConfig({
        plugins: [
          vue(),
        ],
    })
}

1.2 引入@vitejs/plugin-vue

这里的@vitejs/plugin-vue需要使用npm引入,如果不添加这个插件则导致vue文件无法解析。

npm i @vitejs/plugin-vue

二 相关报错

2.1 模块"vite"没有导出的成员"defineConfig"

vite版本过低导致的,升级vite版本。

npm install vite@3.2.3

2.2 vite.createFilter is not a function

vite和vitejs/plugin-vue版本不兼容引起了,升级vitejs/plugin-vue版本。

npm i @vitejs/plugin-vue@3.2.0

三 配置scss全局变量

在vite.config.ts文件中,将文章开始创建的var.scss文件配置到对应位置即可。

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
export default () => {
    return defineConfig({
        plugins: [
          vue(),
        ],
        css: {
            preprocessorOptions: {
              scss: {
                additionalData: '@import "./src/var.scss";' // 加载全局样式,使用scss特性
              }
            },
        }
    })
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值