2017-03-13 15 views
0

をマッピングしてピッカーを塗りつぶします。私はPickerを配列である状態からマッピングすることで記入しようとしています。私はマッピング中にオブジェクトを慰め、何も問題はないようだが、マッピングされているオブジェクトを示している。私が間違っていることは何ですか?私を助けてくれますか?反応ネイティブは、私のRNプロジェクトに

<Item> 
         <Picker 
           iosHeader="Select one" 
           mode="dropdown" 
           onValueChange={this.onBranchChange.bind(this)}> 
           {this.state.branchAddresses.map((address,i) => 
            { 
             console.log("myAddresses: ",address); 
             return <Item style={{fontFamily: 'SourceSansPro-Regular'}} label={address.id} value={address.id} key={i}/>} 
           )} 
          </Picker> 
         </Item> 

ここにはconsole.log()のスナップショットがあります。問題なくオブジェクトを書き込みます。ここでenter image description here

enter image description here

私が取得警告です。 enter image description here enter image description here

+0

' Item'にコンポーネントを使うのか? –

+0

ピッカーと下のコンポーネントの間に線を引くためにItemでラップしました。しかし、あなたのコメントの後、私はItemなしでそれを試しました。再び何も表示されず、空の白いページに警告が表示されます。 - また、警告のスナップショットを質問に追加しました。 –

+0

私はあなたが反応ネイティブから再び 'Item'をインポートしていると思います。私の答えに記載されている2つの方法のいずれかを使用する必要があります。 –

答えて

1

あなたはこの仕事を得るためにPickerコンポーネントからItemを使用する必要があります。

これには2通りの方法があります。

const PickerItem = Picker.Item;

以降にこの<PickerItem>コンポーネントを使用するよりも。

それとも直接 `Picker`があなたのラップされている理由

<Picker.Item style={{fontFamily: 'SourceSansPro-Regular'}} label={address.id} value={address.id} key={i}/>

+0

いいえ、 'react-native'の 'Item'コンポーネントです。ピッカーと次/下のコンポーネントの間に線を引くためにそこに置いています。 –

+0

オプションをレンダリングするには、 'Picker'の' Item'を使うべきです。 次のようにすることもできます:return '' –

関連する問題