Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript React Native,如何使用require函数在图像链接中添加变量_Javascript_React Native - Fatal编程技术网

Javascript React Native,如何使用require函数在图像链接中添加变量

Javascript React Native,如何使用require函数在图像链接中添加变量,javascript,react-native,Javascript,React Native,我将图像本地存储在项目文件夹中,我想在图像源(带require)中添加一个变量(nature.png),所以我喜欢这样 let i = 'natrue'; let imagePath = require('../asset/gallery/image/'); return ( <View > <Image source={{imagePath} + i + '.png'}/> </View> 我

我将图像本地存储在项目文件夹中,我想在图像源(带require)中添加一个变量(nature.png),所以我喜欢这样

let i = 'natrue';
let imagePath = require('../asset/gallery/image/');
    return (
        <View >
            <Image source={{imagePath} + i + '.png'}/>
        </View>
我不想这样做(效果很好),因为我有100多张图片:

<Image source={require('../asset/gallery/image/nature.png')} />

毫无理由地
requirejs
模块不是那样工作的

您必须完全创建字符串,或者创建一个将
键映射到图像的对象。此外,这也是一个最佳实践

您可以创建一个名为image.js的文件并从中导出所有图像

比如说

//image.js
const BASE_URL=“../asset/gallery/image/”;
导出默认值{
nature:require(${BASE\u URL}nature.png`),
}
在你的组件中

从“src/Images”导入图像;
...
...

也许可以尝试使用
imagePath+i+'.png
来代替(没有imagePath周围的
{}
)@NickParsons我得到了相同的errorReactNative的
组件的
source
prop有一个类型为
ImageSourcePropType
,而不是像您试图传递的字符串。您可以尝试使用idea,通过传递一个带有
uri
的对象,或者,您可以使用require并更改字符串:
require('../asset/gallery/image/'+i+'.png')
@NickParsons我遇到一个无法解析模块的错误
<Image source={require('../asset/gallery/image/nature.png')} />