如何使用钩子动态添加组件

时间:2020-06-10 11:10:31

标签: react-native react-hooks

我正在尝试通过React Native中的钩子向View动态添加组件:

const AssetDetailScreen = (props) => {

   const [details, setDetails] = React.useState('');

   React.useEffect(() => {

      getAssetDetailData()     

   });

  getAssetDetailData = () => {
    assetDetailPromise().then((data) => {

      setDetails(data)

    }).catch((error) => {

    ...
    });

  }


   assetItems = details.map((item) => {
      return(
        <Text>{item.label}</Text>
      )
    })

    return (
    <View>

      {assetItems}

    </View>
   )

}

但是我得到这个错误:

TypeError: undefined is not a function (near '... details.map...')

如何解决此问题? 有什么解决方法吗?

1 个答案:

答案 0 :(得分:0)

我通过替换以下行来解决此问题:

const [details, setDetails] = React.useState('');

与此:

const [details, setDetails] = React.useState([]);