【问题标题】:How to change CSS from NPM package and use SCSS instead?如何从 NPM 包中更改 CSS 并改用 SCSS?
【发布时间】:2021-08-02 18:55:08
【问题描述】:

所以我从 NPM 下载了一个名为 react-csv-importer 的包。我的 React 应用程序使用 scss 来自定义布局。我正在使用从 react-bootstrap 购买的 react-bootstrap 模板进行编码。

他们的布局让我很困惑,我似乎无法理解如何自定义我安装的 NPM 包......

这是 index.css 文件的照片,其中包含我需要编辑的所有内容

这是 SCSS 的布局截图

这是主题文件夹内的另一个截图,它包含了大部分的 scss 文件

现在我不应该只能够创建一个名为 csv-importer.scss 之类的新文件,然后从位于 NPM 包中的 index.css 复制代码并在 SCSS 中更新它吗?人们如何以这种方式编辑 NPM 安装?

【问题讨论】:

    标签: css reactjs sass


    【解决方案1】:

    您永远不应该自定义或触摸您通过 npm 安装的包。如果您更改 node_modules 中的包,那么 1. 一旦您再次执行 npm install,它将被覆盖,2. 它不会保存到您的 github,因为您需要使用 .gitignore 排除 node_modules。 node_module 包应该保持原样,不要动。

    相反,您应该从包中导入您需要使用的东西,并在您自己的代码中使用它。因此,如果你有一个通过 npm 安装的名为“example”的包,那么你需要这样做:

    import Something from 'example'
    
    // use Something here
    

    为了使用它。这就是你使用 node_modules 中的东西的方式。

    在您的情况下,您可能应该通过 scss @import 或通过节点导入从已安装的包中导入样式,之后您可以在自己的代码中使用它。但是您不应该修改他们拥有的原始代码。

    如果他们拥有的包是 .css,那么您不能将其更改为 .scss,您只需将其用作 .css。这没什么大不了的,因为无论如何 scss 都会被编译成 css。

    你可以做的是通过@import导入他们所有的样式,然后在你自己的代码或scss中覆盖你想要的东西。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-07-20
      • 2020-02-27
      • 1970-01-01
      • 2019-12-27
      • 2021-09-29
      • 2017-04-12
      • 2016-09-12
      相关资源
      最近更新 更多