React native 构造函数中必须使用解构道具分配错误

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, };

关于lint代码验证错误:

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,
        };
      }