Задать вопрос

CanJS: использование can.compute(initialValue, setterFn) в скоупе компонента?

При создании can.compute из начального значения и сеттера, он просто не работает. Точнее говоря не работает сеттер.

По сути эта конструкция can.compute(initialValue, setterFn) ведёт себя как эта can.compute(initialValue).

Я не правильно готовлю CanJS или это действительно баг?

Ниже простенький компонент, демонстрирующий проблему:
jsbin.com/OjEhIsaG/watch?js,output

can.Component.extend({
    tag: "my-tag",
    template: "<button>click</button> {{val}}",
    scope : {
        val : can.compute('default val', function(newVal)
        {
            alert('this function will never be called');
            return 'I am the real value';
        })
    },
    events : {
        'button click' : function(el)
        {
            this.scope.val(Math.random());
        }
    }
});

var template = can.view.mustache("<my-tag />");
$("body").html(template());
  • Вопрос задан
  • 2778 просмотров
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы