Closed africa1207 closed 3 months ago
呼叫大佬@lhbxs @siyi98 @tw93
是的,drawerList 这种模式比较特殊。弹窗里面其实是一个新的 FormRender 实例,只有在点击确定的时候才会进行数据同步,触发 watch
已修复
是的,drawerList 这种模式比较特殊。弹窗里面其实是一个新的 FormRender 实例,只有在点击确定的时候才会进行数据同步,触发 watch
@lhbxs 你好,那我如何实现drawerList中的字段联动呢如描述中将选中项的price字段赋值给input1
const watch = {
"list[].select1": (value, indexList) => {
console.log("value", value);
console.log("indexList", indexList);
// 无效
form.setValueByPath(`list[${indexList[0]}].input1`, 123);
// 无效
form.setValueByPath(`list[].input1`, 123);
},
};
我直接在select的onChange中也不行
select1: {
title: "单选",
type: "string",
widget: "select",
props: {
options: [
{
label: "选项a",
value: "a",
price: 100,
},
{
label: "选项b",
value: "b",
price: 200,
},
{
label: "选项c",
value: "c",
price: 300,
},
],
onChange: (value, _) => {
form.setValueByPath("list[].input1", _.price);
},
},
},
}
1.依赖仓库的版本(Dependencies versions):
2.问题描述(Bug description):
这里也有个bug,监听'list[].select1'的时候,只有第一次会打印,后续不会打印,如果我将drawerList改成tableList改变下拉框的值就能随时打印 3.出现问题的 schema demo(Reproduction schema demo):
4.最小复现 demo(Reproduction demo): https://codesandbox.io/p/sandbox/xrender-demo-qcpjng