Angular Meteor 1.3 - 收集助手

时间:2015-12-30 00:19:47

标签: angularjs meteor angular-meteor simple-schema meteor-collection-hooks

我正在尝试使用Angular Meteor 1.3获得最优秀的dburles / meteor-collection-helpers包。我有两个系列。

    Lists.attachSchema(new SimpleSchema({
  title: {
    type: String
  },
  archived: {
    type: Boolean
  }
  createdAt: {
    type: Date,
    denyUpdate: true
  },
  sort: {
    type: Number,
    decimal: true,
    optional: true
  },
  updatedAt: {
    type: Date,
    denyInsert: true,
    optional: true
  }
}));

和卡片:

Cards.attachSchema(new SimpleSchema({
  title: {
    type: String
  },
  archived: {
    type: Boolean
  },
  listId: {
    type: String
  },
  members: {
    type: [String],
    optional: true
  },
  userId: {
    type: String
  },
  sort: {
    type: Number,
    decimal: true
  }
}));

我将集合助手定义如下:

Lists.helpers({
  cards() {
    return Cards.find({
      listId: this._id,
      archived: false
    }, {sort: ['sort']});
  }
});

我正在使用发布复合首先获得列表,然后通过订阅关联卡片。这是工作的hunky dory。但是在我的模板中,当我似乎无法弄清list.cards()在我的ng-repeat中工作时。这是我的控制器和相关模板标记的剪辑。

$reactive(this).attach($scope);

      //note this is composite publish
      this.subscribe('list', () => {
        return [$stateParams.listId];
      });

      this.helpers({
        lists: () => {
          return Lists.findOne({_id: $stateParams.listId});
        }
      });

<a class="" ng-repeat="card in list.cards">
  • 我主要得到无限消化问题
  • 您无法在list.cards()中致电ng-repeatng-repeat无效 函数,当我尝试
  • 时,我得到了无限的摘要问题
  • 在示例中调用什么都不做,但我相信那是 因为它返回一个函数。
  • 其他较旧的解决方案仅涉及 添加范围函数和查询,但这似乎不起作用 失去反应性。

有什么明显的吗?我已经看到其他一些人在同样的事情上遇到了问题,但是早期版本的角度流星没有成功,希望有人已经想到这一点。感谢。

0 个答案:

没有答案