Я довольно новичок в реагировании на родную систему и работаю над приложением, которое обменивается данными между двумя пользователями с помощью socket.io
Пользователь 1 отправляет изображение пользователю 2, которое должно отображаться на экране пользователя 2: новый контейнер создается на экране каждый раз, когда пользователь 1 отправляет изображение, но внутри ничего нет ...
Я использую формат base64 для хранения каждого нового изображения в массиве newPictures [].
Вот код пользователя 2. Я получаю строку base64 в console.log (newPictures), поэтому все остальное работает, кроме визуализации изображения.
Спасибо за вашу помощь!
export default class DashboardArtificial extends Component {
constructor(props) {
super(props);
this.state = {
newPicture: "",
newPictures: []
};
}
componentDidMount() {
this.socket.on("new picture", newP => {
this.setState({ newPictures: [...this.state.newPictures, newP] });
setTimeout(() => {
this.setState({
curTime: new Date().toLocaleString()
})
}, 1000);
});
}
render() {
const newPictures = this.state.newPictures.map(newPicture => {
console.log(newPicture);
return (
<Image
style={styles.arrayPictures}
key={newPicture}
source={{uri: 'data:image/png;base64,{newPicture}'}}
/>
)
});
return (
{newPictures}
)