form-create
form-create copied to clipboard
Select组件使用Effect获取数据后,在Update中无法获取Options
使用Select配置了Effect来获取数据,期望其他组件更新可以更新该Select的Options,但是在update函数里无法获取到该rule的Options数据
new Vue({
el: '#app',
data(){
return {
fApi:{},
options:{
onSubmit:(formData)=>{
alert(JSON.stringify(formData))
}
},
rule:[
{
type:'cascader',
field:'city',
title:'city',
value:[],
props:{
options:[]
},
update(val,_rule,fApi){
//此处optiosn和props.options都没有值
console.log(_rule.options)
},
effect:{
fetch: {
action:'https://cdn.jsdelivr.net/gh/modood/[email protected]/dist/pc-code.json',
to: 'props.options',
method:'GET',
parse(res){
function tidy(list){
return list.map(val=>{
return {
value:val.code,
label:val.name,
children:val.children ? tidy(val.children) : undefined
}
})
}
return tidy(res);
}
}
}
}
]
}
}
})
我已经配置了 to: 'props.options', 似乎这个配置没有生效。
下个版本会增加api.getRenderRule方法, 可以获取到最终完整的rule @zhang-huan-1990