使用React Native创建ListItem时可能无法通过require加载图像

时间:2019-03-20 11:56:22

标签: image react-native assets react-native-elements

我正在尝试动态加载图像。我应该有很多图像。举个例子:书籍,电话,屏幕,笔记本,铅笔等。

在我的ListsScreen组件中,我会收到道具将要加载的照片(项目)(在leftAvatar中的ListItem)。

我有一个包含所有图像的文件夹(pencil.jpgbook.jpg等)。这样,应用程序可以动态加载所需的项目。

所以我想我会做类似的事情

import { ListItem, List } from 'react-native-elements'

...

render() {
    return (
      <View>
          {Object.keys(this.props.items).map((item, index) => {  

          return (
            <ListItem 
              key={index}
              title={capitalize(item)}
              leftAvatar={{source: require(`../assets/items/${item}.jpg`)}}
            />
          )})}

      </View>
    )
  }

但是,我们知道字符串应该是静态的,并且不能在运行时构建。这样我就无法加载图片。

我还想有一个const来说明什么是URL,甚至带有要求。

{ pencil: '../assets/items/pencil.jpg' }

但这也不起作用。它仍然说这是一个无效的呼叫。

有人知道如何解决此问题吗?

0 个答案:

没有答案