【发布时间】:2020-10-15 20:19:40
【问题描述】:
我想设置一堆状态,但有时 setState 有效,有时无效,并且尝试使用 componetWillMount 也没有成功。 带有 setState 的回调函数正在触发带有 null 的警报
这是我的代码
componentDidMount(){
var self = this
var uiData = {ui_id:"custReg"}
api('ip/defaultValue/load_DefaultValue', uiData)
.then(function async (response) {
if(response){
if(response.data.status){
var defaultData = response.data.data
self.setState({
defaultDatas: response.data.data ,
branches: defaultData.filter(data =>{return data.TypeID === "Branch"}),
customerCategories: defaultData.filter(data =>{return data.TypeID === "Customer
Category"}),
customerTypes: defaultData.filter(data =>{return data.TypeID === "Customer Type"}),
titles: defaultData.filter(data =>{return data.TypeID === "Name Title"}),
relationTypes: defaultData.filter(data =>{return data.TypeID === "Relation Type"}),
maritalStatuses: defaultData.filter(data =>{return data.TypeID === "Marital
Status"}),
educations: defaultData.filter(data =>{return data.TypeID === "Education"}),
occupations: defaultData.filter(data =>{return data.TypeID === "Occupation"}),
religions: defaultData.filter(data =>{return data.TypeID === "Religion"}),
castes: defaultData.filter(data =>{return data.TypeID === "Caste"}),
bloodGroups: defaultData.filter(data =>{return data.TypeID === "Blood Group"}),
incomeRanges: defaultData.filter(data =>{return data.TypeID === "Income Range"}),
grades: defaultData.filter(data =>{return data.TypeID === "Grading"}),
allDataSet:true
}, () => {
if(self.state.branches){
self.forceUpdate()
alert(JSON.stringify(self.state.branches))
}
});
}else{
alert("Unable to load default data.")
}
}else{
alert("Unable to connect.")
}
})
}`
【问题讨论】: