React native 构造函数中必须使用解构道具分配错误
关于lint代码验证错误:React native 构造函数中必须使用解构道具分配错误,react-native,ecmascript-6,eslint,lint,destructuring,React Native,Ecmascript 6,Eslint,Lint,Destructuring,关于lint代码验证错误: error Must use destructuring props assignment react/destructuring-assignment 我对解构属性的概念不太熟悉,对于如何对以下代码使用解构方法,我感到有点困惑: constructor(props) { super(props); this.state = { clickedFirstTime: !this.props.showDefault, };
error Must use destructuring props assignment react/destructuring-assignment
我对解构属性的概念不太熟悉,对于如何对以下代码使用解构方法,我感到有点困惑:
constructor(props) {
super(props);
this.state = {
clickedFirstTime: !this.props.showDefault,
};
}
请注意,对于在Google上发现此问题的其他人,我已经阅读了以下参考资料,以帮助我理解什么是解构,但我只是不知道在这种情况下如何进行:
- 希望你永远不要写
这个。道具…
。在这种情况下,它正在寻找
constructor(props) {
super(props);
const { showDefault } = this.props;
this.state = {
clickedFirstTime: !showDefault,
};
}
但实际上,您的代码很好,如果规则很烦人,您应该禁用它。您不应该在这里使用解构。禁用规则,它只是有太多的误报。我觉得我应该有一个更好的后续问题,但我能想到的是:真的吗?如果这个规则很糟糕,为什么还要添加这个规则呢?链接到如何做:,Almajuan回答说,从技术上来说这是可行的,我认为传播道具是个坏主意…你可以添加你需要的所有道具,这只是传播如何工作的例子{showDefault,{props}我认为它比这个常量{showDefault}=this.props更优雅;我的脚还不是很强壮,所以我宁愿遵守一条恼人的规则,直到我真的知道我很恼火,没有错或懒惰。处理这件事让我了解了解构和道具的传播。因此,我想这是一件好事,因为有规则;)
constructor(props) {
super(props);
const { showDefault } = this.props;
this.state = {
clickedFirstTime: !showDefault,
};
}