gpt4 book ai didi

javascript - React : cannot add property 'X' , 对象不可扩展

转载 作者:行者123 更新时间:2023-11-30 09:15:14 26 4
gpt4 key购买 nike

我正在我的组件中接收 Prop 。我想在此组件中使用 Prop 添加属性“LegendPosition”。我做不到。请在这件事上给予我帮助。我已经尝试过这段代码但没有成功:

var tempProps     = this.props;
tempProps.legendPosition = 'right';
Object.preventExtensions(tempProps);

console.log(tempProps);

最佳答案

您不能修改 this.props。这里 tempPropsthis.props 的引用,所以它不起作用。您应该使用 JSON.parse()JSON.stringify()

创建 props 的副本
var tempProps = JSON.parse(JSON.stringify(this.props));
tempProps.legendPosition = 'right';
Object.preventExtensions(tempProps);

console.log(tempProps);

有关深度克隆对象的更好、更有效的方法,请参阅 What is the most efficient way to deep clone an object in JavaScript?

关于javascript - React : cannot add property 'X' , 对象不可扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55567386/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com