如何创建全局样式表以在 Nx React 项目中共享 scss 变量?

2024-03-22

现在,我真的希望这不是太基于意见。但我只是想在这里提供一些建议,因为我不知道如何开始。

我有一个基本的Nx https://nx.dev/带有 TypeScript React 前端的工作区SCSS https://sass-lang.com/风格。 该项目的架构看起来是这样的:

root/
├─ apps/
├─ libs/
│  ├─ someLib1/
│  │  ├─ src/
│  │  │  ├─ lib/
│  │  │  │  ├─ someLib1.tsx
│  │  │  │  ├─ someLib1.scss
│  ├─ someLib2/
│  ├─ someLib3/
│  ├─ shared/
│  │  ├─ styles/
│  │  │  ├─ global.scss

有什么聪明的方法可以导入global.scss进入任何可访问的(=相同文件夹级别或以下)组件/libs?举个例子:
想象一下我已经宣布$example: #fff; in global.scss。我将如何使用它someLib1.scss不通过绝对路径导入它(@import/@use "../../../shared/styles/global.scss" or @import/@use "/libs/shared/styles/global.scss")?


最终我想出了以下解决方案:

我添加了一个自定义webpack.config.js文件到我的工作区并扩展了由Nx https://nx.dev/别名为global.scss file.

const path = require('path');
const nrwlConfig = require('@nrwl/react/plugins/webpack.js');

module.exports = (config) => {
  nrwlConfig(config);

  return {
    ...config,
    resolve: {
      ...config.resolve,
      alias: {
        ...config.resolve.alias,
        'global': path.join(
          __dirname,
          'libs/shared/styles/global.scss'
        ),
      },
    },
  };
};

这样做之后我能够导入global.scss在每一个.scss通过别名在 libs 中创建文件,如下所示:

@import "global";
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何创建全局样式表以在 Nx React 项目中共享 scss 变量? 的相关文章

随机推荐

  • VB6:如何从日期类型中删除时间部分

    我有一个Date还包含时间的变量 Dim dt As Date dt 8 3 2016 7 10 40 AM gt 以某种方式删除时间 所以结果应该是 dt 8 3 2016 怎么去掉时间呢 对于另一个日期类型变量 dt DateValue
  • Rails 3 ActiveRecord:UNION

    有没有办法在 Rails 3 中使用 MySQL UNION 我认为让其工作的唯一方法是直接执行查询 ActiveRecord Base connection execute SELECT REPEAT a 1 UNION SELECT R
  • 根据组枚举mysql中的行

    我有一组记录 例如 A B 1 5 1 6 1 9 2 1 2 8 其中我们有两个组 A 1 和 A 2 组内记录按 B 中的值排序 我需要在每个组中添加一个带有枚举的列 A B C 1 5 1 1 6 2 1 9 3 2 1 1 2 8
  • 将父类强制转换为子类

    我有 Message 类 我已经扩展并添加了新属性 class ChildMessage Message prop 在尝试将消息类添加到 ChildMessage 列表时 我得到添加类的 Null 引用 var myChildList ne
  • BMI计算器C代码[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我正在尝试编写一个简单的 BMI 计算器 但出于某种原因 当我尝试身高 175 公式为 1 75 和体重 70 时 它应该给出 2
  • 使用 OpenXmlReader

    我讨厌诉诸 StackOverflow 来获取如此 看似 基本的东西 但过去几个小时我一直在与 Microsoft 斗争 似乎陷入了死胡同 我正在尝试阅读 大型 Excel 2007 电子表格 Google 友好地告诉我 使用 OpenXm
  • UITableview:单击自定义按钮时动态更改单元格高度

    我有一个 UITableview 其中每个单元格都有一个按钮 我的问题是 如果我单击第一行中的按钮 单元格的高度会增加 然后我单击 tableviewcell 中的另一个按钮 已展开的单元格高度将减小 选定的单元格高度将增加 尝试此链接后U
  • Ruby on Rails:符号作为 form_for 中的参数

    我明白传递给的是什么form for执行以下操作时的方法 if user在控制器中设置 这是很明显的 但当我们经过时会发生什么 user 正如我在很多例子中看到的那样 我什么时候应该使用符号版本 使用该符号将生成
  • Objective C 类通过工厂方法继承

    我想继承一个具有工厂方法的框架类 如何使工厂方法返回我继承的类类型的对象 我发现这篇有用的文章 http qualitycoding org factory method 它描述了类似的情况 但在他们的情况下你可以控制超类 我怎么能写 比如
  • 我可以使用临时的右值引用吗?这是未定义的行为吗?

    更新问题为什么这两个右值引用示例有不同的行为 https stackoverflow com questions 35315472 why this two rvalue references examples have different
  • java.util.List 的降序迭代器

    链表可以使用升序或降序迭代器进行迭代 如下所示 LinkedList list new LinkedList StringJoiner sJ1 new StringJoiner list iterator forEachRemaining
  • 在Java 线程中使用PreparedStatements 是否正确?

    我还是一名本科生 只是在做兼职 所以我总是试图了解更好的做事方法 最近 我必须编写一个工作程序 其中程序的主线程将生成 任务 线程 对于每个数据库 任务 记录 该线程将执行一些操作 然后更新记录以表明它已完成 因此 我需要 Threaded
  • 判断两个数组是否具有相同成员的算法

    比较两个数组以查看它们是否具有相同成员的最佳算法是什么 假设没有重复项 成员可以按任何顺序排列 并且都没有排序 compare a b c d b a d c gt true compare a b e a b c gt false com
  • 如何在firebase云函数中指定声音和click_action

    我尝试使用以下函数 node js v8 exports sendComNotification functions firestore document Comunicados comID onUpdate snap context gt
  • 如何为 ASP.NET MVC 3 + Razor 视图封装可重用的“控件”

    我正在寻找有关如何创建可在多个 MVC 3 视图上使用的可重用 控件 的最佳实践 我可以创建一个 Html 帮助程序扩展方法 以编程方式或使用 razor 中的声明性帮助程序 或者我可以创建一个部分视图 就我而言 诀窍是我需要做的不仅仅是将
  • CSS垂直浮动技术

    垂直浮子是否可以与水平浮子类似地工作 在下面的 Html 中 我希望绿色按钮保持原样 黄色按钮漂浮到灰色形状边缘之外的底部 table style margin 250px width 50px height 100px backgroun
  • python追加到json对象中的数组

    我在 python 中有以下 json 对象 jsonobj a b c var1 d var2 e 我想将键值元素附加到 e 中 但无法弄清楚它的语法 我尝试附加以下内容 但括号和引号的结果不正确 jsobj a b e append f
  • 如何向ListView的列表项添加图标/图像

    我已经使用 arrayadapter 创建了 listview 我将 arrayadapter 添加到包含字符串数组的 listview 但我无法添加图标来 eatch listitem 帮帮我 这里有一个免费摘录 http commons
  • 是否可以禁用隐式 ToString() 调用?

    我想知道是否有办法获得此代码的编译错误 var customer new SomeCustomerClass Console WriteLine Customer address customer 所以我将被迫写这样的东西 var cust
  • 如何创建全局样式表以在 Nx React 项目中共享 scss 变量?

    现在 我真的希望这不是太基于意见 但我只是想在这里提供一些建议 因为我不知道如何开始 我有一个基本的Nx https nx dev 带有 TypeScript React 前端的工作区SCSS https sass lang com 风格