CSS文件在一个文件中引入之后就全局生效,其他的文件都可以使用。但是一般不建议这样引入,因为一旦组件多了之后,很可能会导致过分耦合。
- 一般使用一个第三方的模块 styled-components来对我们的样式进行管理。
- styled-components快速入门 ( https://www.jianshu.com/p/2178abb2ee95 )
- styled-components中弃用injectGlobal的解决
- 解决不同浏览器页面样式不统一问题 : 引入reset.css ( https://meyerweb.com/eric/tools/css/reset/ )
- 在styled-component4.X版本中injectGlobalAPI除去,取而代之的是createGlobalStyle样式组件。
也就是说以前的injectGlobal全局样式在4.X版本代替为使用createGlobalStyle渲染组件的方式来使用全局样式。使用方式为:在App.js文件(本项目为App.js)中引入,并夹在需要使用的组件标签之间。
如<Header><GlobalStyledReset/></Header>
使用Immutable.js来管理store中的数据 (immutable:不可修改的)
- 如果用原始的reducer的写法,需要手动的保证state不被修改,这样的话会存在风险。
- 引入一个facebook提供的库--Immutable,这个库可以帮我们生成Immutable对象,使state中的数据成为Immutable对象,需要调用state中的数据的时候,不能直接使用state.xxx,而需要调用提它提供的get()方法来调用对应的数据(state.get()),同时可以调用state.set()方法对state中的数据进行变更。但是set方法变更的原理不是直接改变state,它是先取得state和想变更的内容,相结合然后返回一个全新的对象。