标签:hub ice 监听 属性 增加 操作 参数 this 通过
请配合完整代码参考~:完整源代码
也不是说混乱,主要是网上 推崇 最佳实践。学习一个新东西的时候,本来就很陌生,上来就用最佳实践,当然让人摸不着头脑。
其实搞定 react-redux 主要分两点:
容器组件 和 展示组件 的最佳实践 (难就难在这里,系统架构层次的难)
办法:想办法精通react props 的传值。
另外一个就是 react-redux 的固定用法了。
严格地区分了各国人的进入,就能防止罪犯的逃逸。
你们懂的,如果希望稳定,有时候就需要滴水不漏。
单独举个例子区分一下,数据的来源假设有三种
这里参考 react 小书的(要付钱哦):http://huziketang.mangojuice.top/books/react/lesson28
也可以直接看我代码 src 层的 higher/simple 中的 demoCreateHigher、demoUseHigher 文件。
demoCreateHigher:一个函数,参数是 (组件,需要从本地获取的属性),返回一个带 props 的组件。
完成了获取本地数据的 逻辑。
demoUseHigher:先定义了一个组件,此后使用demoCreateHigher创建了一个我们真正需要的组件(相当于类的实例化)。
一举两得。
展示组件 | 容器组件 | |
---|---|---|
作用 | 展示样式和骨架 | 描述如何运行?数据获取/状态更新 |
直接使用redux? | 否 | 是 |
数据来源 | props | 监听redux |
数据修改 | 调用props中的回调函数 | 由redux派发 |
调用方式(这个我没理解) | 手动 | 由react-redux生成 |
上面贴了一张官网的图(http://www.redux.org.cn/docs/basics/UsageWithReact.html),拿我们之前的 redux 例子来 架构一下吧~
我们之前的 reducer 有什么内容呢? 创造奇迹 和 通过成长改变人的状态 和 添加女朋友(不存在的,已PASS)
onClick = {() => this.props.onClick()}
MiracleInput:用于添加奇迹项目
因为其和 redux 联系较多,所以这里将其放置在容器组件中
完成的 redux 还请切换分支到 react-redux-all 哦~~~~~
标签:hub ice 监听 属性 增加 操作 参数 this 通过
原文地址:https://www.cnblogs.com/can-i-do/p/9192832.html