我希望通过我的下一步行动得到很少的指导。在我们公司,我们开始研究新的管理面板。我想出了一个想法,用npm将它模块化为更小,更易于管理的部分。
我们正在开发的第一个也是最重要的模块是媒体浏览器。它是用React和Sass编写的。它依赖于另一个现在称为 framework 的模块,它是我们管理面板的基础。它也基于Sass,包含所有重要的mixins和变量。
现在,问题是:如何将mixins和变量导入 Media Browser 包?相对路径不同。例如:
开发媒体浏览器时的目录结构:
node_modules
framework
vars.scss
styles.scss
package.json
在管理面板中使用媒体浏览器时的目录结构:
node_modules
framework
vars.scss
media-browser
styles.scss
package.json
vars.scss 的相对路径不同。
我是npm的新手,所以我的方法可能不对。我也尝试过凉亭,但我认为使用npm @ 3的扁平依赖树是一样的。
我在这里找到了类似的问题: Importing Sass through npm,但我宁愿避免一些变通方法。恕我直言,现在在npm @ 3中,这应该更加优雅。
谢谢
答案 0 :(得分:3)
如果要从node_modules文件夹导入css文件,请使用~
。
安装模块:npm install normalize.css --save
然后在app.scss中导入它:@import '~normalize.css';
确保npm模块的入口点正确无误。您也可以执行@import '~normalize.css/path/to/build.css';