gpt4 book ai didi

javascript - 防止在 knockout.js 中运行计算属性(dependentobservable)

转载 作者:行者123 更新时间:2023-12-02 19:29:43 24 4
gpt4 key购买 nike

我想在构造时阻止syncer属性,因为我可以将persistedObject发送到X类。

    function X(persistanceObject) {
var self = this;

self.xid = -1;
self.syncer = ko.computed(function () {
// if object construction in progress then return

// persist properties....
}, self);
self.y = ko.observable(43);

if (typeof persistanceObject !== 'undefined') {
ko.mapping.fromJS(persistanceObject, {}, self.y);
}
}

最佳答案

您可以使用 deferEvalaution 选项来阻止计算的可观察值立即求值。

它看起来像:

self.syncer = ko.computed(function () {
// if object construction in progress then return

// persist properties....
}, self, { deferEvaluation: true });

现在,在访问其值之前,它不会进行计算。如果您没有在 UI 中绑定(bind)它,那么您需要在所有属性准备就绪后至少调用它一次 (self.syncer())。

关于javascript - 防止在 knockout.js 中运行计算属性(dependentobservable),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11645463/

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