vue3 使用sass变量

pnpm add -D sass

1. 在<style>中使用scss定义的变量和css变量

1. 在@/style/variables.scss文件中定义scss变量

 // scss变量
$menuText: #bfcbd9;
$menuActiveText: #409eff;
$menuBg: #304156;

2. 在vite.config.ts中引入

  • 以前使用的@import已经被废弃了
  /*引入index.scss文件中的变量*/
  css: {
    preprocessorOptions: {
      scss: {
      	javascriptEnabled: true,
        additionalData: `@use "@/style/variables.scss" as *;`,
      },
    },
  },

3.使用

  • 可以在style中使用
<style scoped lang="scss">
 .sidebar {
    width: 200px;
    height: 100vh;
    background-color: $menuBg;	
  }
.el-menu-vertical-demo {
  --el-menu-bg-color: $menuBg;
  --el-menu-active-color: $menuActiveText;
  --el-menu-text-color: $menuText;
}
</style>

2. 在标签和<script>中使用scss定义的变量

1. 在@/style/variables.module.scss文件中导出常量

$red: red;
:export {
  fontColor: $red;
  background-color: $menuBg;	// 可直接导出variables.scss
}

2. 在vue组件中引入

  • 可以在组件中传递了
<script setup lang="ts">
import fontColor from '@/style/variables.module.scss'
console.log(fontColor)
</script>

控制台打印结果:
在这里插入图片描述

3. 在标签中使用

<div :style="{ color: fc.fontColor }">scss变量</div>

3. 不要在vite.config和main.ts中引入同一个文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值