Rappid:在检查器中实现select2字段,但它不运行条件“when”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rappid:在检查器中实现select2字段,但它不运行条件“when”相关的知识,希望对你有一定的参考价值。
我正在使用Rappid来绘制对象之间的关系。我需要自定义检查器。当值太多时,我想使用select2插件替换select-box。为此,我使用了一个示例,该文档中出现了使用renderFieldContent来渲染我在inspector.js中定义的特殊字段我的函数和对象正确显示,但另外我需要在选择任何值时出现另一个字段在mi select2中,要做到这一点,我定义以下“何时”
when: {
and: [
{ ne: { 'attrs/attributes/to_eval': '' } },
{ ne: { 'attrs/attributes/to_eval': null } },
]
},
问题如下:当我更改select2的选定选项时,不验证条件。
我该如何运行验证?我需要为select2声明一个事件,触发一个督察事件,还是我需要手动运行验证?
答案
我知道这是一个老问题,但对于那些可能也会混淆的问题,我必须解决类似的问题,需要在更改toggle
字段时显示/隐藏字段。这就是我做的:
- 只添加了一个
ne
表达式到应该显示/隐藏的字段(textOnToggle
); - 指向触发场所需的
ne
表达式路径(toggleText
); - 在触发场上设置
defaultValue
。
因此,它就像这样简单:
textOnToggle: {
type: 'content-editable',
label: 'Text',
index: 1,
when: { ne: {'attrs/mypath/toggleText': true} },
},
toggleText: {
defaultValue: false,
type: 'toggle',
label: 'Hide the text',
index: 2,
},
因此,在这种情况下,单击检查器中的toggleText
字段将隐藏textOnTogle
字段。您可以更改布尔值以执行相反的操作。
JointJS expressions definition table是一个很好的参考,知道可以添加哪些条件。
以上是关于Rappid:在检查器中实现select2字段,但它不运行条件“when”的主要内容,如果未能解决你的问题,请参考以下文章
csharp 通用检查器类,它允许您在类文件中而不是在单独的自定义编辑器中实现OnScene / InspectorGUI。它也提供