有a tutorial for DukeScript,你需要使用Knockout。有enable
绑定。例如:
<button data-bind="enable: !rotating(), click: $root.turnAnimationOn">Start</button>
<button data-bind="enable: rotating, click: $root.turnAnimationOff">Stop</button>
因此DataModel具有rotating
布尔属性。
我的问题:
为什么我们在()
之后使用!rotating
?
如果我从否定表单中删除括号,它就不会起作用。如果我将括号添加到肯定形式,那么它仍然有效。这是为什么?
答案 0 :(得分:1)
1)通常读取我们使用()
的可观察对象,我们只能对unwrapped
可观察内容执行操作。
在observable上没有!
,就像在函数上执行NOT
而不是返回它的值一样。所以如果你想完成这个,你应该first
稍后阅读它{/ 1}}运算符
2)第1点回答你的观点2,即!(真)有效,但!(函数(){})在这里看起来不是一个有效的案例。
简单来说,如果你愿意对observable执行任何操作,你应该使用NOT
约定。