反应原生Android Picker不显示数据

Deagle50

picker本身是显示的,但不是它的数据。另外,当我单击它时,它会显示一个空的白色标签。

{/* Order by picker */}
<View style={globalStyles.rowView}>{/* FlexDirection:'row' */}
    <Text style={[globalStyles.text,styles.text]}>Ordenar por:</Text> {/* color:colors.white, fontSize:"17rem"*/}
    <Picker style={[globalStyles.text, styles.picker]}{/* color:colors.white, fontSize:"17rem"*/}{/* flex:1 */}
       selectedValue={this.state.orden}
       onValueChange={(itemIndex)=>{this.setState({orden:this.state.ordenar[itemIndex]})}}>

       {this.state.ordenar.map(element => {
           <Picker.Item label={element} value={element}/>
        })}

     </Picker>
</View>

当我尝试

<Picker.Item label={this.state.orden} value={this.state.orden}/>

或搭配

<Picker.Item label={this.state.ordenar[1]} value={this.state.ordenar[1]}/>

他们都工作,所以this.state.ordenthis.state.ordenar是不是空的,和我想象中,是不是造型或Flexbox的,在这第二个方式显示数据的问题,所以我想这个问题是map功能

肛门卡莱姆

您必须jsx从地图函数返回元素,然后才能正常工作。请参阅下面的代码段,我已经更新了您的地图功能。

 {/* Order by picker */}
    <View style={globalStyles.rowView}>{/* FlexDirection:'row' */}
        <Text style={[globalStyles.text,styles.text]}>Ordenar por:</Text> {/* color:colors.white, fontSize:"17rem"*/}
        <Picker style={[globalStyles.text, styles.picker]}{/* color:colors.white, fontSize:"17rem"*/}{/* flex:1 */}
           selectedValue={this.state.orden}
           onValueChange={(itemIndex)=>{this.setState({orden:this.state.ordenar[itemIndex]})}}>

           {this.state.ordenar.map(element => {
               return(<Picker.Item label={element} value={element}/>) /*wrap your picker item around return.*/
            })}

         </Picker>
    </View>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章