点击后重新绑定href标签

re-bind href tag on click

本文关键字:绑定 href 标签 新绑定      更新时间:2023-09-26

我是Ember的新手,我在做一个大的遗留项目。问题是以下模板中的URI fooUri只绑定一次,fooUri保持不变:

<a {{bind-attr href=fooUri}}>
    <span class="appicon-table appicon"></span>
</a>
控制器代码:

App.barController = Ember.ObjectController.extend({
    . . .
    fooUri: function() {
        var fooOptions = $.extend({}, this.model.foo.options);
        . . .
        var querystring = encodeURIComponent($.param(fooOptions));
        var uri = '#' + router.generate( ..., querystring, ...);
        return uri;
    }.property('fooMeasureId'),
    . . .
})

。我需要uri将被重新计算,每次我点击链接,因为this.model.foo.options改变。

Thank you

如果this.model.foo是一个ember对象,它是可观察的。因此,您可以将其作为依赖项添加到.property()调用中:

}.property('fooMeasureId', 'model.foo.options')

但要确保用余烬.set()修改它,而不是用简单的赋值(=)。

如果它不是灰烬。对象,您必须在fooUri计算属性上手动调用notifyPropertyChange