我如何混合knockout observable和计算

时间:2018-05-21 10:39:42

标签: knockout.js

我在代码的一个位置定义了一个knockout observable(Typescript)。

title: KnockoutObservableBase<string>;

在另一个课程中,我有2个地方可以更新标题。第一个是静态字符串:

title("Loading...")

后来我想把计算字符串。像

这样的东西
pureComputed(a + b);

我不知道该怎么做。我不能title(pureComputed()),我无法重新分配参数。

我已经阅读了一些关于可写计算的内容,但我不确定它是否相关。

更新 这是我想要发生的代码示例:http://jsfiddle.net/tu97bz0b/

  1. &#34;加载&#34;应在1秒后更改为计算值 - 工作
  2. &#34; Sky King&#34;应该改为&#34; Sky Queen&#34;再过2秒钟 - 不起作用
  3. &#13;
    &#13;
    var viewModel = {
        firstName: ko.observable("Sky"),
        lastName: ko.observable("King"),
    };
    
    viewModel.fullName = ko.computed(function() {
        return viewModel.firstName() + " " + viewModel.lastName();
    });
    
    viewModel.test =  ko.observable();
    viewModel.test("Loading");
    setTimeout(function() {
    	viewModel.test(viewModel.fullName());
    }, 1000);
    
    setTimeout(function() {
    	viewModel.lastName("Queen");
    }, 3000);
    
    // This makes Knockout get to work
    ko.applyBindings(viewModel);
    &#13;
    &#13;
    &#13;

0 个答案:

没有答案
相关问题