我对JSLand和React很新。我有超过10年的Python和烧瓶,主要关注后端和非常少的HTML + JS,但零CSS。我在6周前开始了反应和js,并使用反应来制作简单的应用程序,这不需要太多样式。但是,现在我需要使用React使用扣眼进行造型,才能制作体面大小的项目。反应 - 样板+垫圈,使与webpack sass工作
我从反应样板1开始。在阅读react-boilerplate scss docs和//github.com/grommet/grommet-standalone自述文件后,我的理解是,我需要对webpack config进行更改才能使scss加载程序正常工作。
我ENV是win8.1 64,节点6.4.0
这是我改变。
安装两个
sass-loader
&node-sass
- 在
internals\webpack\webpack.dev.babel.js
改变
cssLoaders: 'style-loader!css-loader?localIdentName=[local]__[path][name]__[hash:base64:5]&modules&importLoaders=1&sourceMap!postcss-loader',
到
按照cssLoaders: 'style-loader!css-loader?localIdentName=[local]__[path][name]__[hash:base64:5]&modules&importLoaders=1&sourceMap!postcss-loader!sass-loader',
通知附加!SASS装载机//github.com/mxstbr/react-boilerplate/blob/master/docs/css/sass.md
增加了以下到
internals\webpack\webpack.base.babel.js
{ test: /\.scss$/, loader: 'style!css!sass?outputStyle=compressed' }
在同一个文件中
resolve.extenstions
阵列加入'.scss'
。现在,这些更改后,我运行NPM启动,以下行添加到
app\containers\App\index.js
现在,这些更改后,我运行NPM启动,并添加下面一行到App \容器\软件\ index.jsimport 'grommet/scss/vanilla/index';
@只是的CSS块下方管线40,和
sassLoader: {
includePaths: [
'./node_modules',
// this is required only for NPM < 3.
// Dependencies are flat in NPM 3+ so pointing to
// the internal grommet/node_modules folder is not needed
'./node_modules/grommet/node_modules'
]
}
@line 62 [第58行,如果你正在看@ @ github源代码在master分支//github.com/mxstbr/react-boilerplate/blob/master/internals/webpack/webpack.base.babel.js,+图4是因为加入4-线SCSS块]的
按这里//github.com/grommet/grommet-standalone
在cmd中的文档。exe控制台我得到以下错误
ERROR in ./app/containers/App/index.js
Module not found: Error: Can't resolve 'grommet/scss/vanilla/index' in 'C:\Users\coder\frontend\app\containers\App'
@ ./app/containers/App/index.js 57:0-36
@ ./app/app.js
@ multi main
Child html-webpack-plugin for "index.html":
不用说,安装孔眼和文件是存在于scss extesion resired位置。我可以ofcourse与扩展作为import 'grommet/scss/vanilla/index.scss
导入然后我得到我已经用尽了我的谷歌赋技巧以下错误
ERROR in ./~/css-loader!./~/style-loader!./~/css-loader!./~/sass-loader?outputStyle=compressed!./~/grommet/scss/vanilla/index.scss Module build failed: Unknown word (5:1)
3 | // load the styles 4 | var content = require("!!./../../../css-loader/index.js!./../../../sass-loader/index.js?outputStyle=compressed!./index.scss");
> 5 | if(typeof content === 'string') content = [[module.id, content, '']];
|^ 6 | // add the styles to the DOM 7 | var update = require("!./../../../style-loader/addStyles.js")(content, {}); 8 | if(content.locals) module.exports = content.locals;
@ ./~/grommet/scss/vanilla/index.scss 4:14-189 13:2-17:4 14:20-195
纠正this.Is有什么很明显的,我在这里失踪?它看起来好像scss加载程序不工作。任何方向都将非常有帮助。如果您已成功使用反应-样板索环,请发表您所做的更改。
PS:SO告诉我,我不能发布两个以上的链路,所以我修改了链接ommit HTTPS:从网址,请手动添加这些,遗憾的麻烦。