Javascript 将相同的值漂亮地分配给多个类属性
我有一节课:Javascript 将相同的值漂亮地分配给多个类属性,javascript,reactjs,class,Javascript,Reactjs,Class,我有一节课: export default class FormField extends Component { state = {}; labelRef = React.createRef(); childRef = React.createRef(); fieldControlRef = React.createRef(); ... } 我不喜欢有三行将相同的值分配给不同的属性。有没有一种方法可以在一个类中使用一行代码?首先,你必须确保自己是正确的 除此之外,您不需
export default class FormField extends Component {
state = {};
labelRef = React.createRef();
childRef = React.createRef();
fieldControlRef = React.createRef();
...
}
我不喜欢有三行将相同的值分配给不同的属性。有没有一种方法可以在一个类中使用一行代码?首先,你必须确保自己是正确的
除此之外,您不需要REF来指定任何类名,只需在组件的状态中设置所需的className
,如:
state = {
className: 'someClassName'
}
然后在渲染时应用该选项:
...
render(){
<div className={this.state.className}>...
}
...
。。。
render(){
...
}
...
这将允许您在您的状态中动态地修改
类名
(例如,响应某些用户交互),并相应地重新呈现相应的元素。如果REF的唯一目的是动态地分配类名
,您当然需要去掉它们,实际上,参考文献认为最佳选择的场景范围非常有限。修改DOM通常是不常见的反应,你应该考虑使用传统的反应工具(即状态变量)来解决这样的问题。仔细看看细节。你是对的——结果我一开始并没有。