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

В настоящее время я устанавливаю источник изображения по умолчанию в конструкторе с помощью require:

constructor(props) {
super(props);
    this.state = {
       name: '',
       pictureSource: require('../assets/images/robot-dev.png')
    };
}

Мой пользовательский компонент использует pictureSource в качестве опоры, а мой TextInput использует имя:

<EditableRoundedImage picture={this.state.pictureSource}/>
<Text style={styles.name}>{this.state.name}</Text>

---Inside EditableRoundedImage---

constructor(props) {
   super(props);
   this.state = {
     image: this.props.picture
   };
}
<Image style={styles.roundedImage} source={this.state.image} />

В методе жизненного цикла componentDidMount я извлекаю некоторые данные и затем изменяю pictureSource / name:

this.setState({
      name: jsonResponse.firstName + " " + jsonResponse.lastName,
      pictureSource: {uri: jsonResponse.imageUrl}
    })

* jsonResponse.imageUrl имеет следующее содержимое: https://ph -файлы.imgix.net / b5541240-7da7-4bf0-8dc2-c9e911b283f2? auto = формат & auto = сжатие и кодек = mozjpeg & cs = strip

По какой-то причине вновь полученное изображение не отображается в приложении, ноимя.Мне было интересно, связано ли это с нотацией {uri:} или я что-то наблюдаю.

Заранее спасибо!

1 Ответ

0 голосов
/ 13 декабря 2018

Вы назначаете this.state.image источнику изображения.Но у вас в штате нет свойства под названием image.Может ли это быть проблемой?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...