是否有可能filterBy在emberjs中没有值?

时间:2017-08-17 21:33:48

标签: ember.js ember-controllers

在我的控制器中,我有一个像

这样的过滤数组
filteredPosts: Ember.computed.filterBy('model', 'foo', 'bar')

filteredPosts有可能根本不过滤任何东西。如果用户不想应用过滤器而只想查看所有帖子,我需要这样做。

1 个答案:

答案 0 :(得分:1)

然后不要使用Ember.computed.filterBy。如果您不想过滤直接使用数组。或者实现类似通配符的东西构建自己的计算属性:

filteredPosts: Ember.computed('model', 'bar', {
    get() {
        const filter = this.get('bar');
        const model = this.get('model');
        return filter === '*' ? model : model.filterBy('foo', bar);
    }
})

基本上Ember.computed.filterBy只是围绕几行代码的语法糖。如果您想修改此代码,请自行编写。