首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何给一个选取器赋予多个值?就像一个数组

如何给一个选取器赋予多个值?就像一个数组
EN

Stack Overflow用户
提问于 2021-06-16 19:21:22
回答 2查看 45关注 0票数 0

如果我有数组货币,我想在选取器组件中显示4个值的下拉列表,

代码语言:javascript
复制
    import {Picker} from '@react-native-picker/picker';
 let currencies=['pound','euro','USD Dollor']
or
    let currencies = [
        {country: 'UK', currency: 'GBP', currencylabel: 'pound'},
        {country: 'EU', currency: 'EUR', currencylabel: 'euro'},
        {country: 'USA', currency: 'USD', currencylabel: 'USD Dollor'},
      ];
    
    <Picker
           selectedValue={state.currency}
           onValueChange={(itemValue, itemIndex) => this.pickerChange(itemIndex)}
          >
            {currencies.map(v => {
              return <Picker.Item color="red" label={v.currencyLabel} value={v.currency} key={v.currency}/>;
            })}
          </Picker>

我想在一个下拉列表中显示currencylabel中的所有值。但是解决方案不起作用,或者如果我只有一组对象,比如,currencies='pound','euro','USD Dollor‘,该如何实现?

EN

回答 2

Stack Overflow用户

发布于 2021-06-16 19:30:43

根据文件,Picker is deprecated

根据医生的建议,我会尝试react-native-select-multiple

代码语言:javascript
复制
import React, { Component } from 'react'
import { View } from 'react-native'
import SelectMultiple from 'react-native-select-multiple'

const fruits = ['Apples', 'Oranges', 'Pears']
// --- OR ---
// const fruits = [
//   { label: 'Apples', value: 'appls' },
//   { label: 'Oranges', value: 'orngs' },
//   { label: 'Pears', value: 'pears' }
// ]

class App extends Component {
  state = { selectedFruits: [] }

  onSelectionsChange = (selectedFruits) => {
    // selectedFruits is array of { label, value }
    this.setState({ selectedFruits })
  }

  render () {
    return (
      <View>
        <SelectMultiple
          items={fruits}
          selectedItems={this.state.selectedFruits}
          onSelectionsChange={this.onSelectionsChange} />
      </View>
    )
  }
}
export default App
票数 1
EN

Stack Overflow用户

发布于 2021-06-16 19:33:48

如果你仍然想使用像‘英镑’,‘欧元’,‘美元美元’这样的数组,你仍然可以使用map,如下所示:

代码语言:javascript
复制
currencies.map((item, key) => {
         return <Picker.Item color="red" label={item} value={item} key={key}/>
}

使用数组而不是对象的数组进行迭代

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68001693

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档