无法在本机反应中显示用户数据

时间:2018-10-15 09:01:27

标签: image api react-native profile

我正在用本地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,但遇到了先前的错误。有人可以告诉我怎么了吗?我很困..非常感谢。

1 个答案:

答案 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并查看其格式,然后将其与上述示例相匹配,并且应该可以使用。