【发布时间】:2015-03-31 10:10:55
【问题描述】:
data-bind="visible: $root.isAdministrator"
有人可以解释一下knockout.js中的上述行是什么意思吗?
【问题讨论】:
-
Knockout.js syntax 的可能重复项
标签: javascript jquery knockout.js
data-bind="visible: $root.isAdministrator"
有人可以解释一下knockout.js中的上述行是什么意思吗?
【问题讨论】:
标签: javascript jquery knockout.js
$root 是一个保存根 ViewModel 的变量。在此页面中,任何地方都定义了这样的 ViewModel:
var vm = {
isAdministrator:ko.observable(true);
aRootObserable:ko.observable("ROOT");
childVm: {
childObservable:ko.observable("CHILD");
}
}
ko.applyBindings(vm);
当作用域在底层 ViewModel 上但你想访问根 ViewModel 时,它在 knockout.js 中使用。示例:
<div data-bind="with: childVm">
<div data-bind="text: childObservable"><!-- result is CHILD --></div>
<div data-bind="text: $root.aRootObserable"><! -- result is ROOT --></div>
</div>
如果您正在重新设计淘汰网页,您可以在所有 JS 文件中搜索 applyBindings。传递给此函数的参数是根 ViewModel。
【讨论】: