vite配置scss全局变量
vite配置scss全局变量
创建单独文件variable.scss在其中定义变量
vite.config.ts中配置
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'// https://vite.dev/config/
export default defineConfig({plugins: [vue()],resolve: {alias: {'@': path.resolve(__dirname, 'src')}},css: {preprocessorOptions: {scss: {additionalData: '@use "@/styles/variable.scss";'}}}
})

任何scss地方使用变量
p {color: variable.$color;
}
可能遇到的问题
Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0
sass在3.0.0移除了@import改为@use,因此会有这个提示,所以配置时推荐使用@use
弃用的原因在于 @import 规则存在一些问题,比如会把所有变量、混入(mixins)和函数都导入到全局作用域,容易造成命名冲突,@use 规则能更好地控制作用域,避免这类问题
他们在使用时是有区别的
@import 对应使用变量
p { color: $color}
@use 对应使用变量
p {color: variable.$color; // 文件名.变量名
}
Can't find stylesheet to import.
配置时,发现路径是对的,但是一直报错,如下

在使用相对路径的时候,vite可能无法解析,因为在sass的加载器在处理相对路径时,会根据当前文件的位置查找,而additionalData是全局注入的内容,没有明确的上下文依赖关系,因此相对路径对报错
修改为@/styles/variable.scss就可以完美解决了
Module loop: this module is already being loaded.

重复引入module报错,一般情况,如果我们在main.ts已经引入过一次scss文件,在继续在vite.config.ts中引入,报错的
修改方案: 只在一个地方引入
通常scss变量的的文件都是单独建立一个文件,不会和index.scss混在一起
index.scss通常是在main.js中引入
而variable.scss通常是在vite.config.js中配置,他们的区别是什么呢
main.js与vite.config.js 引入scss的区别
main.ts全局引入,是让整个项目都加载使用了scss文件的样式,每个scss文件的yi'ji保持了自己独立的作用域,不同文件直接的变量是不能相互使用的,这也是为什么要在vite.config.js中配置
vite.config.js的additionalData引入a文件,会保证在每个scss文件编译之前执行先编译一次a文件,保证了每次scss文件注入时,a文件变量已经都存在了,这样保证了变量可以全局使用
相关文章:
vite配置scss全局变量
vite配置scss全局变量 创建单独文件variable.scss在其中定义变量 vite.config.ts中配置 import { defineConfig } from vite import vue from vitejs/plugin-vue import path from path// https://vite.dev/config/ export default defineConfig({plugins: [vue()],resolve:…...
Spring Boot01(注解、)---java八股
Spring Boot中常用注解及其底层实现 1、SpringBootApplication注解: SpringBootApplication注解:这个注解标识了一个SpringBoot工程,它实际上是另外三个注解的组合,这三个注解是: aSpringBootConfiguration:…...
2.19学习记录
Web easyupload3.0 这是一道构造.htaccess文件的传马 如下: <FilesMatch "jpg">SetHandler application/x-httpd-php </FilesMatch>.htaccess文件可以作为一个解释器,可以将传进去的图片马改为php马上传之后再传个图片马&#…...
汽车免拆诊断案例 | 2013 款奔驰 S300L 车起步时车身明显抖动
故障现象 一辆2013款奔驰S300L车,搭载272 946发动机,累计行驶里程约为15万km。车主反映,将挡位置于D挡,稍微释放一点制动踏板,车辆蠕动时车身明显抖动,类似气缸失火时的抖动,又类似手动变速器…...
【HeadFirst系列之HeadFirst设计模式】第5天之工厂模式:比萨店的秘密武器,轻松搞定对象创建!
工厂模式:比萨店的秘密武器,轻松搞定对象创建! 大家好,今天我们来聊聊设计模式中的工厂模式。如果你曾经为对象的创建感到头疼,或者觉得代码中到处都是 new 关键字,那么工厂模式就是你的救星!本…...
Redis如何解决热Key问题
目录 **如何解决 Redis 的热 Key(Hot Key)问题?****解决方案** **1. 使用多级缓存****方案** **2. 进行 Key 预分片(Key Sharding)****方案** **3. 使用 Redis 复制机制(主从复制或集群)****方案…...
从开发到部署:EasyRTC嵌入式视频通话SDK如何简化实时音视频通信的集成与应用
嵌入式设备和视频综合管理平台均支持B/S架构。在B/S架构下,传统的视频观看方式依赖于微软的OCX控件,然而OCX控件的使用正面临越来越多的挑战: 首先,用户需要安装浏览器插件、调整浏览器安全级别,并允许ActiveX控件弹出…...
Zookeeper(58)如何在Zookeeper中实现分布式锁?
在 Zookeeper 中实现分布式锁是一种常见的用例。Zookeeper 提供了强一致性、高可用性的分布式协调服务,使得它非常适合用来实现分布式锁。以下是详细的步骤和代码示例,展示如何在 Zookeeper 中实现分布式锁。 1. Zookeeper 分布式锁的基本原理 Zookeep…...
Mac端homebrew安装配置
拷打了一下午o3-mini-high,不如这位博主的超强帖子,10分钟结束战斗 跟随该文章即可,2025/2/19亲测可行 mac 安装HomeBrew(100%成功)_mac安装homebrew-CSDN博客文章浏览阅读10w次,点赞258次,收藏837次。一直觉得自己写…...
Spring 接入 DeepSeek
引入依赖 <dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-spring-boot-starter</artifactId> </dependency>2.yml配置 spring:ai:openai:api-key: sk-xxxxx // 填写自己申请的keybase-url: http…...
vscode将文件中行尾默认CRLF改为LF
安装prettier npm install --save-dev --save-exact prettier执行命令 npx prettier --write --end-of-line lf .即可将项目中的所有文件行尾序列格式改为lf *在你使用git拉取代码的时候,git会自动将代码当中与你当前系统不同的换行方式转化成你当前系统的换行方…...
python-leetcode 33.排序链表
题目: 给定链表的头结点head,请将其按升序排列,并返回排序后的链表 方法一:自顶向下归并排序 链表自顶向下归并排序的过程: 1.找到链表的中点,以中点为分界,将链表拆分成两个子链表。寻找链表的中点可以…...
【数据结构初阶第十二节】设计循环队列
云边有个稻草人-CSDN博客 必须有为成功付出代价的决心,然后想办法付出这个代价。 还有最后一道关于队列的习题,这题有点难,准备好迎接挑战吧! 目录 1.【题目】 2.实现循环队列推荐用数组,Why? 3.Q1:如…...
基于微信小程序的民宿短租系统设计与实现(ssm论文源码调试讲解)
第4章 系统设计 4.1系统设计的目标 系统设计的目标是满足用户的需求和满足系统实现所需要的所有要求。本系统收集了信息浏览、信息删除、信息添加、信息修改、信息查询为一体[17]。改变了用户民宿短租的方式,提高管理员管理效率以及用户预订的效率。为用户、房主提…...
使用 Jetty 构建 HTTPS 服务入门指南
在互联网安全越来越重要的今天,使用 HTTPS 为 Web 服务提供安全传输成为标准配置。Jetty 是一个高性能、易用且功能丰富的开源 Java HTTP 服务器和 Servlet 容器,能够轻松实现 HTTPS 支持。本文将结合代码实例,引导您快速搭建一个基于 Jetty 的 HTTPS 服务。 一、Jetty 简介…...
数据结构《图》
数据结构《图论》 图的性质 一、无向图(Undirected Graph) 定义 由一组顶点(Vertex)和一组无向边(Edge)构成。 每条无向边用一条无方向的线段连接两个顶点,记为 ( (u, v) ),其中…...
用Chrome Recorder轻松完成自动化测试脚本录制
前言 入门自动化测试,录制回放通常是小白测试首先用到的功能。而录制回放工具也一直是各大Web自动化测试必然会着重提供的一块功能。 早期WinRunner、QTP这样的工具,自动化测试可以说是围绕录制回放开展的。近年像Selenium也提供有录制工具 Selenium IDE,Playwright也包含…...
⭐️苹果电脑安装windows10双系统【详细图文步骤保姆级教程】【本教材适用于MAC台式机、笔记本MacBook air和pro】
苹果电脑安装windows10双系统【详细图文步骤保姆级教程】【本教材适用于MAC台式机、笔记本MacBook air和pro】 苹果电脑安装windows10双系统一、准备工作准备项1:U盘作为系统安装盘准备项2:您需要安装的系统镜像 二、启动转换助理步骤1:找到启…...
win10系统上的虚拟机安装麒麟V10系统提示找不到操作系统
目录预览 一、问题描述二、原因分析三、解决方案四、参考链接 一、问题描述 win10系统上的虚拟机安装麒麟V10系统提示找不到操作系统,报错:Operating System not found 二、原因分析 国产系统,需要注意的点: 需要看你的系统类…...
Java 大视界 -- 开源社区对 Java 大数据发展的推动与贡献(91)
💖亲爱的朋友们,热烈欢迎来到 青云交的博客!能与诸位在此相逢,我倍感荣幸。在这飞速更迭的时代,我们都渴望一方心灵净土,而 我的博客 正是这样温暖的所在。这里为你呈上趣味与实用兼具的知识,也…...
别再折腾Vagrant了!用VirtualBox直接导入P4学习镜像(Ubuntu 16/20)的保姆级教程
零基础搭建P4开发环境的终极指南:绕过Vagrant直接使用预配置镜像 对于网络编程初学者来说,P4语言正成为软件定义网络(SDN)领域的重要工具。但许多人在第一步——环境配置上就遭遇了滑铁卢。本文将彻底解决这个痛点,提供一种比官方教程更可靠的…...
别再只数data_count了!巧用Xilinx FIFO的可编程标志(prog_full/empty)做精准流控
突破传统计数局限:Xilinx FIFO可编程标志的高效流控实践 在高速数据处理的FPGA设计中,FIFO(先进先出存储器)作为数据缓冲的核心组件,其性能直接影响系统吞吐量和稳定性。许多工程师习惯依赖rd_data_count和wr_data_cou…...
DeepSeek大幅下调API价格至全球新低,V4技术升级与昇腾协同助力AI应用规模化
4月26日,DeepSeek官方发布API价格调整公告,全系API输入缓存命中价格降至首发价的十分之一,V4 - Pro更叠加限时2.5折,创全球大模型价格新低。这一举措背后与技术升级和昇腾生态协同有关。价格调整详情本次降价覆盖V4系列全模型&…...
参数传递规则问题-类型匹配
一、顶层参数传递给sub_function参数 note: candidate function not viable: no known conversion from ap_uint<32> * to ap_uint<16> * for 4th argument; void my_top (hls::stream<ap_axiu<PIX_W*N_PIX,1,1,1> >& src,hls::stream<ap_axiu&…...
非官方套件也能起飞:手把手教你给Jetson Orin NX模块刷上Jetpack 6.2,解锁Super性能
非官方套件性能飞跃指南:Jetson Orin NX模块刷写Jetpack 6.2全流程解析 当大多数开发者还在使用官方DevKit套件时,有一群极客已经将目光投向了更具性价比的独立模块方案。Jetson Orin NX核心模块以其出色的计算性能和灵活的集成特性,正在成为…...
我的文章喂喂喂
页面切换动画...
车联网MQTT 消息处理的高并发优化
背景 在车联网场景中,数采平台需要实时接收数百至上千辆车辆的上报数据,涵盖实时遥测、心跳、故障、状态变更等多种消息类型。每辆车按 10~30 秒间隔上报,千辆车并发意味着每秒需要处理数十到上百条 MQTT 消息,且每条消息需经过解…...
终极音乐解锁指南:让你的加密音频重获自由播放权
终极音乐解锁指南:让你的加密音频重获自由播放权 【免费下载链接】unlock-music 音乐解锁:移除已购音乐的加密保护。 目前支持网易云音乐(ncm)、QQ音乐(qmc, mflac, tkm, ogg) 。此版本为预构建版本。 项目地址: https://gitcode.com/gh_mirrors/unl/u…...
Windows AirPlay 2接收器终极方案:免费实现iOS设备投屏到Windows电脑
Windows AirPlay 2接收器终极方案:免费实现iOS设备投屏到Windows电脑 【免费下载链接】airplay2-win Airplay2 for windows 项目地址: https://gitcode.com/gh_mirrors/ai/airplay2-win 你是否曾经羡慕苹果用户能够轻松地将iPhone或iPad屏幕投射到Mac电脑上&…...
5步掌握雀魂AI智能辅助工具:提升麻将水平的终极指南
5步掌握雀魂AI智能辅助工具:提升麻将水平的终极指南 【免费下载链接】Akagi 支持雀魂、天鳳、麻雀一番街、天月麻將,能夠使用自定義的AI模型實時分析對局並給出建議,內建Mortal AI作為示例。 Supports Majsoul, Tenhou, Riichi City, Amatsuk…...
