scss、sass安装和使用(变量、混入)

2 篇文章 0 订阅
1 篇文章 0 订阅

一、安装

安装 sassnode-sasssass-loader

npm install sass node-sass sass-loader

如果安装失败可以使用 淘宝镜像 或者 cnpm淘宝镜像和cnpm安装方法

sass-loader是为了让 webpackvite 等打包工具加载 Sass/SCSS 文件并将他们编译为 CSS

注意:node-sass 必须和 node.js 版本相匹配,否则项目无法运行

附:node-sassnode.js 版本对照表,本文只列举一部分,详细内容可以去 node-sass官网 查看

NodeJSSupported node-sass versionNode Module
Node 198.0+111
Node 188.0+108
Node 177.0+, <8.0102
Node 166.0+93
Node 155.0+, <7.088
Node 144.14+83
Node 134.13+, <5.079

二、使用

1. 创建一个 scss 文件

假设在 src/assets/style/ 文件中创建了一个叫 index.scss 的文件

2. 引入文件

局部引入

.vue 文件中引入

.vue

<script>
import "@/assets/style/idnex.scss";
export default {
};
</script>
<style lang="scss" scoped>
</style>
全局引入

main.js 中引入

main.js

import "./assets/style/idnex.scss";

3. 引入变量、混入

按照上面的方法引入变量是不会生效的,scss变量 需要在 打包工具 中配置,如 vue.config.jsvite.config.ts

举例:在 src/style/ 文件夹中创建 color.scssmixin.scss 文件

color.scss

// 颜色变量
$red: #ff3c3c;
$orange: #ff9302;
$yellow: #fecf03;
$blue: #2e6cf6;
$green: #5cc9a5;

mixin.scss

// 混入-滚动条样式
@mixin scroll-bar {
  &::-webkit-scrollbar-track-piece {
    background: #d3dce6;
  }

  &::-webkit-scrollbar {
    width: 6px;
  }

  &::-webkit-scrollbar-thumb {
    background: #99a9bf;
    border-radius: 20px;
  }
}

注意:在不同的打包工具中引入,配置是不一样的

vue.config.js

module.exports = {
  // ...
  css: {
    loaderOptions: {
      sass: {
        prependData: `@import "@/style/color.scss"; @import '@/style/mixin.scss';`,
      },
    },
  },
};

vite.config.ts

export default defineConfig( {
  css: {
    preprocessorOptions: {
      scss: {
        additionalData: `@import '@/style/color.scss'; @import '@/style/mixin.scss';`
      },
    }
  }
})

4. 使用

经过上面的方法引入后,即可在全局使用配置好的变量和混入了,使用方法如下

<style lang='scss' scoped>
.header {
    background-color: $blue;
}
.main {
    @include scroll-bar;
    width: 100%;
    height: calc(100vh - 66px);
    padding: 20px;
    overflow: auto;
}
</style>
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

温其如玉_zxh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值