react 子元素修改父元素值的一个偏方,虽然简单,但是不建议用,

时间:2023-03-09 06:42:03
react 子元素修改父元素值的一个偏方,虽然简单,但是不建议用,
this.state.obj = {
name: "小明"
} <Zizujian obj={this.state.obj} /> // 子组件这样修改父元素的值
// 我们知道js的对象的类型的属于引用类型
// 所以,我们这个把一个对象传到子组件上,由于是一个对象,所以改变对象内部的值会映射到父对象上!!!!!之前在angular里传递对象就是这样传递的,都没有关注细节,js已经帮你做好了,
// 但是React官方文档规定,不允许修改props的值,,虽然可以替换,但是却是不可逆的, // 在子组件中这样写 this.props.obj.name = "小华"; // 虽然不想承认,如果打印父元素的值,this.state.obj.name 真的变成了"小华"

如果项目不大,那么用这种方法偷下懒也无可厚非,但是如果是大项目,还是,有一套统一的方法比较好