изображение метода openSelectDialog ImagePickerIOS в React Native не выводится - PullRequest
0 голосов
/ 14 ноября 2018

Вот мой код:

import React, {Component} from 'react';
import {ImagePickerIOS, Image, Text, View} from 'react-native';

class Dashboard extends Component {

  constructor(props) {
    super(props);
    this.state = {
      image: ''
    };
  }

  componentDidMount() {
    ImagePickerIOS.openSelectDialog({}, imageUri => {
      this.setState({ image: imageUri });
    }, error => console.log(error));
  }

  render() {
    return (
      <View>
        <Text>{JSON.stringify(this.state.image)}</Text>
        { this.state.image ?
        <Image style={{flex: 1}} source={{uri: this.state.image}} />
        : null }
      </View>
    );
  }
}

export default Dashboard

Когда вы запустите вышеуказанный код, this.state.image будет иметь "assets-library: //asset/asset.HEIC? Id = ....& ext = HEIC ".

Однако не выводится.

И <Image style={{width: 200, height: 200}} source={{uri: this.state.image}} /> Это свойство стиля выводит симулятор IOS на черный экран и выходит из приложения.

Версия React Native - 0.57.4, а симулятор - iPhone X - 12.1.

Help.

1 Ответ

0 голосов
/ 08 января 2019

У меня такая же проблема. Но я решил эту проблему. Вам может понадобиться добавить ширина и высота в стиль.

{ this.state.image ? <Image style={{height: 100, width: 100}} source={{uri: this.state.image}} /> : null }
...