VUE3项目--集成Sass

项目中集成Sass后,在组件内部就可以使用sass样式,需要加上lang="scss"

一、安装Sass

pnpm install sass(或者sass-embedded) sass-loader -D

二、添加全局样式

  1. src文件夹下新建文件/styles/index.scss
  2. 在src/styles下文件文件reset.scss,目的是清除默认样式。复制npm官网的reset.scss文件内容到该文件中。
  3. 在index.scss中引入reset.scss文件。

@use './reset.scss';

  1. 在src/styles下文件文件variable.scss,目的是定义全局样式变量。变量名称以$开头。
php 复制代码
// variable.scss

$color: red;
$base-size: 10
  1. 在入口文件main.ts中导入样式文件。
arduino 复制代码
// main.ts

// 引入全局样式
import '@/styles/index.scss'
  1. 在vite.config.ts文件中配置scss。
php 复制代码
// vite.config.ts

export default defineConfig({
  css: {
    preprocessorOptions: {
      scss: {
        additionalData: '@use "@/styles/variable" as *;'
      }
    }
  }
})

三、使用全局样式

上面定义了两个全局样式 <math xmlns="http://www.w3.org/1998/Math/MathML"> c o l o r 、 color、 </math>color、base-size,直接在组件中使用即可。

css 复制代码
<style scoped lang="scss">
div {
  h1 {
    // 使用全局样式变量$color
    color: $color;
  }
}
</style>
相关推荐
玄魂8 小时前
如何查看、生成 github 开源项目star 图表
前端·开源·echarts
前端一小卒9 小时前
一个看似“送分”的需求为何翻车?——前端状态机实战指南
前端·javascript·面试
syt_10139 小时前
Object.defineProperty和Proxy实现拦截的区别
开发语言·前端·javascript
遝靑9 小时前
Flutter 跨端开发进阶:可复用自定义组件封装与多端适配实战(移动端 + Web + 桌面端)
前端·flutter
cypking9 小时前
Web前端移动端开发常见问题及解决方案(完整版)
前端
老前端的功夫9 小时前
Vue 3 vs Vue 2 深度解析:从架构革新到开发体验全面升级
前端·vue.js·架构
栀秋6669 小时前
深入浅出链表操作:从Dummy节点到快慢指针的实战精要
前端·javascript·算法
狗哥哥10 小时前
Vue 3 动态菜单渲染优化实战:从白屏到“零延迟”体验
前端·vue.js
青青很轻_10 小时前
Vue自定义拖拽指令架构解析:从零到一实现元素自由拖拽
前端·javascript·vue.js
树下水月10 小时前
纯HTML 调用摄像头 获取拍照后的图片的base64
前端·javascript·html