是否建议在React组件中拥有其他对象?这样做有什么缺点吗?我看到完成了here
这是我的例子:
import React, {Component} from 'react';
import Utility from './Utility';
export default class MyComponent extends Component {
static defaultProps = {
message: 'Hello',
name: 'John!'
};
constructor(props) {
super(props);
this.utility = new Utility();
}
render() {
return (
<h1>{this.props.message}, {this.props.name} {this.utility.getText()}</h1>
);
}
}
实用程序将是为组件提供更多功能的一类。我检查过的大多数示例都没有这种情况。如果可以使用,那么在构造函数或mount函数中实例化会更好吗?
最佳答案
没关系我宁愿在构造函数中执行此操作,因为我觉得这更多是初始化过程。生命周期方法相互通信的唯一方法是通过查询state(或prop)或this
变量。
在大多数情况下,将随机事物置于状态只会通过一次又一次地调用渲染而导致性能问题,因此您应尝试将这些变量移至如下所示:
this.utility = new Utility();
另外,如果这是在多个地方使用的东西,请考虑将其传递给父母的道具。这样,您可以在子组件的任何位置使用相同的初始化对象(但这取决于您的用例)。