创建和使用全局绑定

时间:2014-05-08 07:00:54

标签: javascript knockout.js

如何在淘汰赛中创建全局绑定?

我希望能够做到这样的事情:

<div class="col-lg-6" data-bind="visible: IsPayingUser">
    <!-- the server will not send any data for freemium, 
         so hide the element unless it's a paying customer -->
</div>

也就是说,我不想在每个视图模型中创建IsPayingUser作为属性,而只是定义它一次。

1 个答案:

答案 0 :(得分:2)

您可以使用window关键字指示Knockout明确“转义”视图模型范围:

<div class="col-lg-6" data-bind="visible: window.UserData.IsPayingUser">

在你的JavaScript中:

window.UserData = { IsPayingUser = ko.observable(false) };

值得注意的是,“敲除方法”是使用嵌套的View-Models并尽量避免污染全球范围。