Reactjs 基于其他值更改Formik选择器选项-React Native

Reactjs 基于其他值更改Formik选择器选项-React Native,reactjs,react-native,formik,picker,Reactjs,React Native,Formik,Picker,我正在尝试根据用户为国家选择的内容更改州的选择器选项。现在我有两个数组,分别对应于加拿大和美国。我正在使用props.values.country.map将数组映射到选取项中,但是我得到的未定义不是一个函数。当我用CA或US替换props.values.country时,选择器项目映射正确。如何调用国家值以便动态更改第二个选择器 var CA = ['Alberta']; var US = []; return ( <View style={styles.contain

我正在尝试根据用户为
国家选择的内容更改
州的选择器选项。现在我有两个数组,分别对应于加拿大和美国。我正在使用
props.values.country.map
将数组映射到选取项中,但是我得到的
未定义不是一个函数
。当我用
CA
US
替换
props.values.country
时,选择器项目映射正确。如何调用国家值以便动态更改第二个选择器

  var CA = ['Alberta'];
  var US = [];
  return (
    <View style={styles.container}>
      <Formik
        initialValues={{
          state: '',
          country: '',
        }}
        // Form submission action
        onSubmit={async (values) => {
          addData(values);
        }}>
        {(props) => (
          <KeyboardAvoidingView
            behavior={Platform.OS === 'ios' ? 'padding' : null}
            style={{flex: 1, width: '100%'}}>
            <ScrollView style={styles.inner}>
              <Picker
                selectedValue={props.values.country}
                onValueChange={props.handleChange('country')}
                style={styles.input}>
                <Picker.Item label="Canada" value="CA" />
                <Picker.Item label="USA" value="US" />
              </Picker>
              <Picker
                selectedValue={props.values.state}
                onValueChange={props.handleChange('state')}
                style={styles.input}>
                {props.values.country.map((item, index) => {
                  return <Picker.Item label={item} value={index} key={index} />;
                })}
              </Picker>
              <View style={[{width: '90%', margin: 10, alignSelf: 'center'}]}>
                <Button
                  title="place order"
                  color="maroon"
                  onPress={props.handleSubmit}
                  style={{padding: 3, width: '80%'}}
                />
              </View>
            </ScrollView>
          </KeyboardAvoidingView>
        )}
      </Formik>
var CA=['Alberta'];
var US=[];
返回(
{
添加数据(值);
}}>
{(道具)=>(
{props.values.country.map((项目,索引)=>{
返回;
})}
)}

你明白了吗?我有一个相同的问题,我希望表单值根据通过道具传递的内容进行更改。你明白了吗?我有一个相同的问题,我希望表单值根据通过道具传递的内容进行更改