首页 > 解决方案 > 我正在尝试在选择器中传递多个道具反应原生但有一些问题

问题描述

 <Picker
    selectedValue={patient}
    style={{ color: 'white' }}
    onValueChange={(itemValue) => {
    if (itemValue != "0") {
        setPatientId(itemValue.slice(0, 20))
        setPatient(itemValue.slice(20))
    }
    }}
     >
  <Picker.Item label="Chosse A Patient" value="0" />
      {data.map((item) => {
          return <Picker.Item label={item.name} value={item.id + item.name} key={item.id} />;
       })}
</Picker>

在这里我发送所有数据然后我使用 itemValue.slice(20) 这种方法的问题是在选择项目后它会反转为默认值

标签: reactjsreact-native

解决方案


<Picker
    selectedValue={patient}
    style={{ color: 'white' }}
    onValueChange={(itemValue) => {
    if (itemValue != "0") {
        setPatient(itemValue)
        setPatientId(itemValue.slice(0, 20))
        setPatientName(itemValue.slice(20))
    }
    }}
     >
  <Picker.Item label="Chosse A Patient" value="0" />
      {data.map((item) => {
          return <Picker.Item label={item.name} value={item.id + item.name} key={item.id} />;
       })}
</Picker>

推荐阅读