Шаблон представления Ember как вычисляемое свойство

У меня возникают проблемы при обновлении свойства шаблона в представлении Ember, когда оно является вычисляемым свойством.

Ember правильно компилирует шаблон при первой загрузке представления и возвращает его как свойство, но вычисляемое свойство шаблона не обновляется при последующем изменении зависимости.

Вот пример на JSFiddle:http://jsfiddle.net/VkJC3/

App=Em.Application.create();

App.MyView = Em.View.extend({
    toggle: true
    ,template: function(){
        if (this.get('toggle')) {
            return Em.Handlebars.compile('toggle is true')
        } else {
            return Em.Handlebars.compile('toggle is false')
        }
     }.property('toggle')
});

theView= App.MyView.create();
theView.append('body');

Ember.run.later(function() {
    console.log('later');
    theView.set('toggle',false);
}, 2000);
​

Любые другие предложения о том, как этого добиться, приветствуются. Может быть, лучше всего поместить помощников в один шаблон руля.

РЕДАКТИРОВАТЬ:

Вот более полный пример, показывающий Ember.CollectionView, который будет содержать вышеупомянутый Ember.View:http://jsfiddle.net/VkJC3/6/

После Ember.run.later первый элемент должен измениться с типа 1 на тип 2 и иметь обновленное свойство вычисляемого шаблона.

App=Em.Application.create();

App.MyView = Em.CollectionView.extend({
    content: [
        Em.Object.create({type: 1, data:"Maybe item type 1 is a link"})
        ,Em.Object.create({type: 2, data:"And item type 2 is a header"})]

    ,itemViewClass: Em.View.extend({
        template: function(){
            if (this.get('content.type')==1) {
                return Em.Handlebars.compile('<a href="#">{{view.content.data}}</a>')
            } else if (this.get('content.type')==2) {
                return Em.Handlebars.compile('{{view.content.data}}')
            }
         }.property('content.type')
    })
});


theView= App.MyView.create();
theView.append('body');

Ember.run.later(function() {
    console.log('later');
    theView.get('content')[0].set('type',2);
}, 2000);
    ​

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

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