使用一个组件或模块之前,应当知道它能解决的问题是什么,不能解决的问题是什么。使用的最佳实践是什么?
某些场景下,我们会使用 defaultValue
,但有些组件没有提供 defaultValue
或者某些组件的输入输出接口设计的不好。
输入(value) 输出 (onChange)
比如有些组件:
<Date
value={new Date().getTime()} // 1521444641396
onChange={function(date) {
console.log(date) // Mon Mar 19 2018 15:30:13 GMT+0800 (CST)
}}
/>
这种情况下可以用 sync-state
无副作用的实现 defaultValue