dependentObservable 初始化

发布于 2024-12-15 06:57:33 字数 483 浏览 0 评论 0原文

据我所知, dependentObservable 在声明时进行计算。 但如果某些值尚不存在怎么办?

例如:

var viewModel ={};

var dependentObservable1 = ko.dependentObservable(function(){

     return viewModel.abc;

},viewModel);

viewModel.abc = 123;

这是一个简单的例子,但您可以在下面的图片中看到带有一些 dependentObservable 的情况。

在此处输入图像描述

我该如何解决此问题?可以使用定时器什么的吗? jsfiddle

As i know dependentObservable calculating when it has been declared.
But what if some values doesnt exists yet?

for example:

var viewModel ={};

var dependentObservable1 = ko.dependentObservable(function(){

     return viewModel.abc;

},viewModel);

viewModel.abc = 123;

it's easy example but you can see case with a few dependentObservable on a picture below.

enter image description here

How i can resolve this issue? May be use timer or something? jsfiddle

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

物价感观 2024-12-22 06:57:33

创建 dependentObservable 时可以传递一个标志来推迟评估,直到它被某些东西(比如绑定)引用。

您可以使用对象文字定义您的 dependentObservable,例如:

var dependentObservable1 = ko.dependentObservable({
    read: function() {
        return viewModel.abc;
    },
    deferEvaluation: true,
    owner: viewModel
});

There is a flag that you can pass when creating a dependentObservable to defer the evaluation until it is referenced by something (like a binding).

You would define your dependentObservable using an object literal like:

var dependentObservable1 = ko.dependentObservable({
    read: function() {
        return viewModel.abc;
    },
    deferEvaluation: true,
    owner: viewModel
});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文