我如何使用全局Scss变量覆盖我的节点模块

时间:2019-10-30 14:51:59

标签: npm webpack sass

我创建了一个个人UI框架(反应组件),并希望与我的一些项目共享该框架。

为了进行良好的管理,我想在NPM上上传我的框架。

我将SCSS用于由一个全局SCSS变量文件组成的框架。 如果我想为每个项目使用不同的全局变量值,该如何处理?我想将全局变量文件设置在node-modules文件夹之外。

这是否会影响全局变量从node-modules文件夹中进入节点模块?

任何解决方案将不胜感激。

1 个答案:

答案 0 :(得分:1)

SCSS允许您为变量定义默认值,该值可以被否决。

项目app.scss中的示例文件

$some_color: blue;
@import 'node_modules/yourframework/main'; // This is your frameworks main file

框架node_modules/yourframework/main.scss中的示例文件

$some_color: red !default;
body{
   background-color: $some_color;
}

这将导致您的身体背景变为蓝色。

祝你好运!