не удалось отобразить данные пользователя в реагировать родной - PullRequest
0 голосов
/ 15 октября 2018

Я создаю приложение в реагирующей нативной 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 голосов
/ 15 октября 2018

React-native поддерживает два типа источников изображений: локальный и сетевой.

Для локальных источников, которые вы используете, требуется.Например:

<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 и посмотрите, в каком она формате, и сопоставьте его с приведенными выше примерами идолжно сработать.

...