Knockout: вычисляемая наблюдаемая функция против

При использовании нокаута, в чем преимущество использования вычисляемых наблюдаемых только для чтения, а не простых функций?

Возьмите следующий конструктор viewmodel и фрагмент HTML, например: & # x200B;

var ViewModel = function(){
    var self = this;
    self.someProperty = ko.observable("abc");
    self.anotherProperty = ko.observable("xyz");
    self.someComputedProperty = function(){
        return self.someProperty() + self.anotherProperty();
    };    
};

<input data-bind="value: someProperty"/>
<input data-bind="value: anotherProperty"/>
<p data-bind="text: someComputedProperty()"></p>

Здесь все, кажется, работает так, как вы ожидаете, поэтому есть причина, по которой я должен вместо этого использовать:

​var ViewModel = function(){
    var self = this;
    self.someProperty = ko.observable("abc");
    self.anotherProperty = ko.observable("xyz");
    self.someComputedProperty = ko.computed(function(){
        return self.someProperty() + self.anotherProperty();
    });    
};


<input data-bind="value: someProperty"/>
<input data-bind="value: anotherProperty"/>
<p data-bind="text: someComputedProperty"></p>

Я заметил, что документация наhttp://knockoutjs.com/documentation/computedObservables.html утверждает, что "... декларативные привязки просто реализуются как вычисляемые наблюдаемые", значит ли это, что мне нужно явно использовать их в моих моделях представления?

Ответы на вопрос(1)

Ваш ответ на вопрос