mpe*_*pen 11 javascript reactjs
他们说你不应该修改propsReact组件.这是否扩展到在构造函数中修改它们?
特别,
export default class BookingForm extends React.Component {
    constructor(props) {
        // am I allowed to modify `props` here?
        super(props);
    }
}
Run Code Online (Sandbox Code Playgroud)
要非常清楚,我知道JavaScript允许我这样做,我问这是一个糟糕的设计模式,将来会让我头疼.
我想在初始化时重新格式化一些道具; 之后他们不会再改变了.
mpe*_*pen 11
再次重申什么zerkms指给我看,答案是没有,你是不是可以修改props,甚至在构造函数中.
super()期望与你给出完全相同的道具,即使你试图通过提供不同的东西来欺骗系统,它们也会在构造函数之后立即被覆盖.因此,你无法修改this.props.
即使您尝试修改props对象以添加额外属性,您也会看到如下错误:
TypeError:无法添加属性培根,对象不可扩展
因此,即使您愿意,也无法修改构造函数中的props.
但是,您可以设置新的[JavaScript]属性,例如
this.myReformattedProperty = format(props.oldProperty)
Run Code Online (Sandbox Code Playgroud)
        |   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           3280 次  |  
        
|   最近记录:  |