我在coach视图中构建了两个模板,并将它们添加到客户端人机界面。如何在它们之间实现通用逻辑?
Coach view 1
--------------------------------
button 1 button 2
--------------------------------
Coach view 2
----------------------------------
Text box
----------------------------------
我有两个单选按钮,另一个有文本框。如果我按任一个,我想设置一个文本,例如你好,再见。
答案 0 :(得分:0)
您应该为每个按钮指定自己的控件ID名称,这样您就可以知道它们是哪个按钮,例如“button1”,“button2”。然后将每个按钮绑定到相同的字符串变量,该变量需要是绑定到视图的视图或业务对象中的配置变量。单击每个按钮时,它们将导致更改事件触发,因为绑定变量已更新,并且该更改的值或属性将是单击按钮的控件ID。我假设您的文本框也绑定到它的教练视图中的变量。当您检测到更改事件时,如果值为“button1”,则将文本框的字符串值设置为您想要的任何文本。如果值为“button2”,请将文本框的值设置为所需的文本。我无法访问我最近为此做的代码,或者我会给你一个更准确的语法。
我上面的每个教练视图都可能有一个配置变量,一个名为“buttonClicked”的东西,并将每个按钮绑定到它。然后一个绑定教练视图2像“displayText”。如果其中任何一个发生变化,它将触发更改事件,这就是为什么要使用if / else确保更改为“button1”或“button2”的原因。如果button1更改,则this.context.config.displayText.setValue(“button1 clicked”)。