dva学习记录

参考地址:Ant Design项目实战
一起学react (1) 10分钟 让你dva从入门到精通
无状态组件(Stateless Component) 与高阶组件
dva中 connect()()的用法。

最近正在学习Ant Design,使用的是dva

一个基于 React 和 Redux 的轻量应用框架,概念来自 elm,支持 side effects、热替换、动态加载、react-native、SSR 等,已在生产环境广泛应用。

之前看过一点点的redux,还不是很了解,刚好一起学习

1. Stateless Component(无状态组件)

首先这个写法之前在了解React时没有接触过,具体的介绍和写法参考链接一起学react (1) 10分钟 让你dva从入门到精通,这里列出两段代码的对比(区别是箭头函数):

使用箭头函数时:

const Products = ({
    dispatch,
    products
}) => {
    function handleDelete(id) {
        dispatch({
            type: 'products/delete',
            payload: id,
        });
    }
    return (
        <div>
            <h2>List of Products</h2>
            <ProductList onDelete={handleDelete} products={products} />
        </div>
    );
}

不使用箭头函数时:

class Products extends React.Component {
    constructor() {
        super();
        this.handleDelete = this.handleDelete.bind(this);
    }
    handleDelete(id) {
        this.props.dispatch({
            type: 'products/delete',
            payload: id
        });
    }
    render() {
        return (
            <div>
                <h2>List of Products</h2>
                <ProductList onDelete={this.handleDelete} products={this.props.products} />
            </div>
        );
    }
}

2. connect的用法

代码是这么写的:

export default connect(({ products }) => ({
  products,
}))(Products);

解释可以参考dva中 connect()()的用法。
大致可以理解为:

const bindToComponent = connect()
export default bindToComponent(Products)

或者是

function connect(props) {
    return function(component) {
        return <component ...props/>
    }
}

connect主要是将model和component连接起来

未完待续

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 说在前面 关于 react 的总结过去半年就一直碎碎念着要搞起来,各(wo)种(tai)原(lan)因(le)。心...
    陈嘻嘻啊阅读 11,822评论 7 41
  • 不知大家学 react 或 dva 时会不会有这样的疑惑: es6 特性那么多,我需要全部学会吗? react c...
    sidney_c阅读 7,730评论 0 19
  • http://gaearon.github.io/redux/index.html ,文档在 http://rac...
    jacobbubu阅读 80,335评论 35 198
  • react脚手架大集合 react4.0 官网redux入门教程react-native中文官网react官方文档...
    pauljun阅读 3,408评论 0 7
  • 人生中出现的一切 都无法拥有 只能经历 深知这一点的人,就会懂得 无所谓失去 只是经过而已 亦无所谓失败,只是经验而已。
    铭鹤源阅读 1,189评论 0 0

友情链接更多精彩内容