猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
react中props的值不能改变,为什么重新渲染,nextProps值又与原来不相同呢?新手求解!
react中props的值不能改变,为什么重新渲染,nextProps值又与原来不相同呢?新手求解!
ibeautiful
浏览 2517
回答 1
1回答
精慕HU
首先,prop 作为组件对外暴露出去的接口,当外部世界需要给组件传入数据或函数时(props 支持任何 JS 数据类型,所以不只是静态数据),通过 prop 属性传给子组件,组件接收到的 props 已成既定,不能改变,因为react组件应该是纯函数,相同的输入,应该产生相同的输出,其是由数据驱动的(组件外部的数据prop / 组件内部的数据state))。但是外部下一次给子组件传递 prop 时,可能本身就是个变量,比如把自身 state 中某个值,作为属性传给子组件:<ChildComponent value={this.state.value} />下次 re-render 时,从而子组件 nextProps !== this.props以上纯属个人拙见。
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
JavaScript
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续