我正在尝试使用rails使webpackwebpacker一起使用。但是当我部署到生产环境时,它失败了:

   ERROR in /home/user/app/shared/~/css-loader!/home/user/app/shared/~/postcss-loader!/home/user/app/shared/~/sass-loader/lib/loader.js!/home/user/app/shared/~/bootstrap-fileinput/css/fileinput.css
   Module build failed: Error: No PostCSS Config found in: /home/user/app/shared/node_modules/bootstrap-fileinput/css


由于.postcssrc.yml位于/home/user/app/tmp/build-.../.postcssrc.yml,相对于/home/user/app/shared/node_modules/bootstrap-fileinput/css/fileinput.css,它不在文件树中。因为我在两个发行版之间共享node_modules目录。我该怎么办,否则不共享目录?

最佳答案

我可以通过指定配置文件explicitly使其工作:

diff --git a/config/webpack/loaders/sass.js b/config/webpack/loaders/sass.js
index faba9d5..6fc902c 100644
--- a/config/webpack/loaders/sass.js
+++ b/config/webpack/loaders/sass.js
@@ -4,6 +4,11 @@ module.exports = {
   test: /\.(scss|sass|css)$/i,
   use: ExtractTextPlugin.extract({
     fallback: 'style-loader',
-    use: ['css-loader', 'postcss-loader', 'sass-loader']
+    use: ['css-loader', {
+      loader: 'postcss-loader',
+      options: {
+        config: '.postcssrc.yml',
+      },
+    }, 'sass-loader']
   })
 }


但这很可能会禁用nodejs软件包可能具有的配置文件。不确定是否重要。

或多或少relevant links

关于css - 需要软件包的css文件时,postcss找不到配置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43485357/

10-09 18:23
查看更多