2016-11-27 6 views
2

開発しようとしているA React Native(バージョン0.38.0)のアプリに問題があります。私は基本的に私が行くように学習しています。NSDictionary型のネイティブJSON値に反するNSStringに変換できません

カスタムAPIエンドポイントからJSONを取得しています。私はJSONをループしていくつかのデータを出力することができましたが、問題は画像にリンクするstringです。私はエラーを受け取り続ける:

JSON Value of { robj = "https://example.com/img.jpg" } type NSDictionary Cannot be converted to NSString. 

Googleの周りにスカウトがあったので、私は問題の頭や尾を作ることはできません。

誰でも正しい方向に向けることができますか?

var api = { 
    getData() { 
    var url = 'https://example.com/api/json/' 
    return fetch(url).then((res) => res.json()) 
    } 
} 

class GetCategories extends Component { 
    constructor(props) { 
    super(props) 
    this.state = { 
     categories: [] 
    } 
    } 

    componentWillMount() { 
    api.getData().then((res) => { 
     this.setState({ 
     categories: res 
     }) 
    }) 
    } 

    render() { 
    var catLoop =this.state.categories.map(function(obj, index){ 
     var catTitle = '', 
      catImage = ''; 

     catTitle = obj.title; 
     catImage = obj.image; 

     return (
     <View key={index}> 
      <Image source={{uri: {catImage}}} style={{width: 400, height: 400}}> 
      <Text>{catTitle}</Text> 
      </Image> 
     </View> 
    ) 

    }); 

    return <View>{catLoop}</View> 
    } 
} 
+0

は、あなたはそれがこのエラーを返して持っているコードを提供することができますか?具体的には ''ソースプロップの割り当てです。 –

+0

@BradBumbaloughコードの更新された質問を参照してください。感謝。 –

+0

Iは 追加することによってそれを解決<画像ソース= {{URI: 'catImage'}}スタイル= {{幅:400、高さ:400}}> {catTitle} をしかし、画像がディスプレイの習慣。 –

答えて

2

これはあなたの問題を解決するべきである...

<Image source={{uri: catImage}} style={{width: 400, height: 400}}> 
    <Text>{catTitle}</Text> 
</Image> 
+0

上記のようにコメントを事前に解決。とにかくありがとう。 –

関連する問題