猿问

ES6 函数式组件 React.js 中的 Getter

我在 React 中使用无状态组件,我发现使用 Getters 有问题。


对于有状态组件(基于类的组件),它可以正常工作,但是如何在无状态(功能组件)中使用它;


 // this is code for statefull component(class based component)


get lookupsOfSelectedGroup(){

        const lookUps = this.props.mainLookups.filter(

          item => item.extras.parent === this.state.activeGroup

        );


        if (lookUps[0] && lookUps[0].responseStatus === 200) {

          return lookUps[0].response.lookup;

        }


        return [];

  }



// this is the code for functional component I did:


    get lookupsOfSelectedGroup =()=> {

        const lookUps = this.props.mainLookups.filter(

          item => item.extras.parent === this.state.activeGroup

        );


        if (lookUps[0] && lookUps[0].responseStatus === 200) {

          return lookUps[0].response.lookup;

        }


        return [];

      }    ```


Cannot find name 'get'.


倚天杖
浏览 284回答 2
2回答

慕村9548890

您只能在 ES6 类和对象字面量中使用get和set关键字。

蛊毒传说

getter 只能定义为对象或类的属性。您不能直接在函数体中定义它们。您要么需要lookupsOfSelectedGroup用普通函数替换(可能是更好的解决方案),要么将其包装在对象文字中。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答