gpt4 book ai didi

javascript - 复合可观察量条件的 knockout applyBindingsToNode 问题

转载 作者:行者123 更新时间:2023-12-02 16:09:32 28 4
gpt4 key购买 nike

我正在使用 knockout ,并使用 ko.applyBindingstoNode 以编程方式应用运行时绑定(bind)到某个节点。

第一个简单的案例有效:

ko.applyBindingsToNode(myElement, {visible: observable1}, myModel );

但是,如果我的可见依赖于更多可观察,并且我使用正常的表示法,就好像我通过 html data-bind 属性进行绑定(bind)一样,它不起作用:

ko.applyBindingsToNode(myElement, {visible: observable1() && observable2()}, myModel );

我需要定义一个 ko.compulated 并在编程绑定(bind)中使用它,但我确实不想创建这些计算,因为我担心旧版浏览器(如 IE6)的性能

如何使用 applyBindingsToNode 完成涉及复杂表达式的绑定(bind)?

最佳答案

所以你想要一个计算值而不使用计算值?这是不可能的,你需要使用 ko.compulated:

var myComputed = ko.computed(function(){
return observable1() && observable2();
});

ko.applyBindingsToNode(myElement, {visible: myComputed}, myModel);

如果您要在 HTML 中执行此操作,它无论如何都会在后台创建一个计算。

knockout 表现相当不错。如果您真的担心,您应该做一个基准测试并检查它是否真的重要

关于javascript - 复合可观察量条件的 knockout applyBindingsToNode 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30370504/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com