我正在尝试在列表项中使用 Inspector 的when
参数。在这种特殊情况下,我想在用户使用切换按钮时隐藏项目的正文文本字段:
inputs: {
mylist: {
type: 'list',
label: 'List of items',
item: {
type: 'object',
properties: {
attrs: {
text: {
title: {
type: 'text',
label: 'Title',
index: 1
},
body: {
type: 'textarea',
label: 'Body',
index: 2,
when: { eq: {'????': false} } // what path should be used here?
}
},
toggles: {
toggleBody: {
defaultValue: false,
type: 'text',
label: 'Hide body',
index: 3
},
}
} // attrs
} // properties
} // item
}
}
我已通过以下方式验证renderFieldContent
:
renderFieldContent: function(options, path, value) {
if(path.endsWith('/attrs/text/body')){
console.log(path);
}
} // 1 item in the list outputs: mylist/0/attrs/toggles/toggleBody
列表项路径遵循项号`mylist/${i}/attrs/toggles/toggleBody`
所在的模式${i}
...
我试图mylist/0/attrs/toggles/toggleBody
在表达式中引用(所以它总是会引用第一项),但这似乎也不起作用......有没有办法引用列表项属性的路径?