我正在用本地CRNA反应构建应用程序,当我调用注册用户的个人资料图片后出现此错误。
对
require
的调用期望恰好1个字符串文字参数,但这 被发现:require(this.state.pict)
我有点困惑如何从API调用用户信息项。这是我获取用户数据的代码。
fetch('someurl', {
method: 'GET',
headers:{
Authorization: 'token',
}
})
.then((response)=> response.json())
.then((responseJson)=> {
this.setState({
students: responseJson.data,
loading: false,
})
})
.catch((error)=>{
console.log(error);
});
我将该代码放在componentDidMount()
上并在图像源中调用this.state.pict
,但遇到了先前的错误。有人可以告诉我怎么了吗?我很困..非常感谢。
答案 0 :(得分:0)
React-native支持两种类型的图像源:本地和网络。
对于本地资源,您使用require。例如:
<Image source={require('main/assets/images/your-image.jpg')}/>
对于网络资源,必须使用uri对象。例如:
<Image source={{uri:'https://imgur.com/gallery/Fepmd4K'}/>
请注意,本地图像源接受带有字符串作为参数传递的require,而网络图像源则要求带有uri参数的对象。
您可以在此处了解更多信息:https://facebook.github.io/react-native/docs/images
关于您的问题,请首先尝试console.log
this.state.pic
并查看其格式,然后将其与上述示例相匹配,并且应该可以使用。