反应JSX组件和等待

时间:2017-06-20 17:19:29

标签: reactjs asynchronous promise async-await jsx

我有一个async / await函数,我希望使用该结果在我的React本机应用程序中有条件地呈现一个jsx组件。

这是一个返回promise的类方法。该方法声明了异步。

问题是我想使用它的结果有条件地渲染一些jsx。



const hasEdit = await perms.has('/page', 'edit');

return (
      <div>
      { hasEdit &&
        <Button
          icon='pencil'
          text='EDIT'
          onTouchTap={ () => { props.onEdit(); } }
        />
      }
      </div>
    )
&#13;
&#13;
&#13;

返回: 必须返回有效的React元素(或null)。您可能已经返回了undefined,数组或其他一些无效对象。

知道如何尝试这个吗?任何事情都会受到赞赏。

1 个答案:

答案 0 :(得分:0)

移动componentDidMount,使其成为异步,然后在结果上使用setState的建议使其在渲染中可用。渲染不能是异步。