vite中使用scss导出变量到js/ts中作为变量使用

定义scss

定义一个scss文件,注意,这里的文件名要以module.scss结尾,不然会出现读写错误的问题。

$background-color_hover:  #e4e8ec;
$background-color_chosed: #f44343;

:export {
    bgc_hover: $background-color_hover;
    bgc_chosed: $background-color_chosed;
}

.module.scss与.scss的区别

以下是.module.scss与.scss结尾读到的内容区别
先来看.module.scss,这个样子可以看出,scss经过处理后到js中变成了纯文本格式。

:export {
  bgc_hover: #e4e8ec;
  bgc_chosed: #f44343;
}

接下来看.scss格式,可以看到,接收到的参数为json格式,在js中直接读取到对象,直接引用即可。

{
    "bgc_hover": "#e4e8ec",
    "bgc_chosed": "#f44343"
}

在JS/TS中引入

在引入后,直接使用变量名.样式即可。

const click = async (item: respoItem) => {
    const styles = await import ('@/renderer/style/leftBar/respoItem.module.scss')
    console.log(styles.bgc_hover)
    respoStore.chooseRespo(item)
}

坑点

在已经被vite当做全局样式导出的scss文件中不要使用:export做再次导出,页面会提示错误。

posted @   隔岸苦晴  阅读(1231)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
点击右上角即可分享
微信分享提示