gpt4 book ai didi

reactjs - 在构造函数中定义状态更好还是使用属性初始值设定项更好?

转载 作者:行者123 更新时间:2023-12-03 12:56:09 24 4
gpt4 key购买 nike

根据this babel 文档中,将 ES6+ 与 React 结合使用的正确方法是像这样初始化组件:

class Video extends React.Component {
static defaultProps = {
autoPlay: false,
maxLoops: 10,
}
static propTypes = {
autoPlay: React.PropTypes.bool.isRequired,
maxLoops: React.PropTypes.number.isRequired,
posterFrameSrc: React.PropTypes.string.isRequired,
videoSrc: React.PropTypes.string.isRequired,
}
state = {
loopsRemaining: this.props.maxLoops,
}
}

但有一些官方示例,例如 Dan Abramov 自己的 React DnD模块,使用 ES6+,但仍然在构造函数中定义状态:

constructor(props) {
super(props);
this.moveCard = this.moveCard.bind(this);
this.state = {
// state stuff
}
}

现在,Dan Abramov 作为 React 的重要贡献者,可能知道他可以在构造函数之外定义状态,但仍然选择在构造函数内执行此操作。

所以我只是想知道哪种方式更好,为什么?

最佳答案

我认为这是个人喜好问题。转译后的输出在语义上是相同的。

关于reactjs - 在构造函数中定义状态更好还是使用属性初始值设定项更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37788342/

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