React native 反应本机选取器:显示不同的项目列表
我正在学习使用本地选择器。现在,作为一个例子,我添加了两种用户类型:自由职业者和客户 我想根据所选的React native 反应本机选取器:显示不同的项目列表,react-native,react-native-picker-select,React Native,React Native Picker Select,我正在学习使用本地选择器。现在,作为一个例子,我添加了两种用户类型:自由职业者和客户 我想根据所选的用户类型显示不同的选择器项目。目前,我的应用程序会显示所有项目,而不考虑所选的用户类型 例如:如果用户选择了用户类型自由职业者,我想将选取者项目显示为自由职业者1和自由职业者2 而且,如果用户选择了user typeClient,我想将picker项显示为Client 1和Client 2 我是新来的,所以我非常感谢你的帮助 下面提供的代码片段: export default class FrTo
用户类型显示不同的选择器项目
。目前,我的应用程序会显示所有项目,而不考虑所选的用户类型
例如:如果用户选择了用户类型
自由职业者,我想将选取者项目
显示为自由职业者1和自由职业者2
而且,如果用户选择了user type
Client,我想将picker项
显示为Client 1和Client 2
我是新来的,所以我非常感谢你的帮助
下面提供的代码片段:
export default class FrTopUpScreen extends Component {
constructor(props) {
super(props);
this.state = {
userType: '',
clientName: '',
freelancerName: '',
}
}
render() {
return (
<View>
<View style={{ flexDirection: 'row' }}>
<Text style={styles.titleStyle}>User Type</Text>
<View style={styles.pickerStyle}>
{<Picker
mode='dropdown'
selectedValue={this.state.userType}
onValueChange={(itemValue, itemIndex) =>
this.setState({ userType: itemValue })
}>
<Picker.Item label="Select User Type" value="" />
<Picker.Item label="Freelancer" value="Freelancer" />
<Picker.Item label="Client" value="Client" />
</Picker>}
</View>
</View>
<View style={{ flexDirection: 'row' }}>
<Text style={styles.titleStyle}>Name</Text>
<View style={styles.pickerStyle}>
<Picker
mode='dropdown'
selectedValue={this.state.name}
onValueChange={(itemValue, itemIndex) =>
this.setState({ name: itemValue })
}>
<Picker.Item label="Please Select" value="" />
<Picker.Item label="Freelancer 1" value="Freelancer 1" />
<Picker.Item label="Freelancer 2" value="Freelancer 2" />
<Picker.Item label="Client 1" value="Client 1" />
<Picker.Item label="Client 2" value="Client 2" />
</Picker>
</View>
</View>
);
};
};
导出默认类FrTopUpScreen扩展组件{
建造师(道具){
超级(道具);
此.state={
用户类型:“”,
客户端名称:“”,
自由撰稿人姓名:'',
}
}
render(){
返回(
用户类型
{
this.setState({userType:itemValue})
}>
}
名称
this.setState({name:itemValue})
}>
);
};
};
您应该尝试以下方法:
var pickerItems = ["Freelancer","Client"];
var freelancer =["Freelancer1","Freelancer2"];
var client =["Client1","Client2"];
<Picker
style={{your_style}}
mode="dropdown"
selectedValue={this.state.selected}
onValueChange={()=>{
if(selectedValue == Freelancer)
{
this.setState({
pickerItems=this.state.freelancer
});
}
else{
this.setState({
pickerItems=this.state.client
});
}
}}>
{pickerItems.map((item, index) => {
return (<Picker.Item label={item} value={index} key={index}/>)
})}
</Picker>
var pickerItems=[“自由职业者”、“客户”];
自由职业者变量=[“自由职业者1”,“自由职业者2”];
var client=[“Client1”、“Client2”];
{
如果(selectedValue==自由职业者)
{
这是我的国家({
pickerItems=this.state.freegorer
});
}
否则{
这是我的国家({
pickerItems=this.state.client
});
}
}}>
{pickerItems.map((项,索引)=>{
返回()
})}
您必须使用多个选择器来执行soI,我只想根据所选的用户类型显示不同的名称
选择器列表。在这种情况下,如果用户类型
是自由职业者
,那么我想用自由职业者1
和自由职业者2
显示选择器。而且,如果用户类型
是客户机
,那么我想用客户机1
和客户机2
显示选择器。关于多个选择器,我不确定。所以当用户选择一个选择器时,您想在同一个选择器中显示不同的选项吗?是的。像这样的,如果可能的话。我试过了,但没用。对不起。我犯了多个错误。现在在这里发布这些错误太过匆忙了。但是谢谢你的建议。