简单模式忽略我的更新

时间:2017-05-16 23:35:43

标签: javascript meteor

尝试创建一个更改我{ "clientId": "string", "consentType": "string", "expiryTime": "String (timestamp)", "id": "string (identifier)", "principalId": "string", "resourceId": "string", "scope": "string", "startTime": "String (timestamp)" } 集合中名为String status的事件。

事件:

NetworkApp

它会更新上次修改应用程序的时间,但不会更新状态。控制台中不会出现任何错误,但它会记录Template.app_detail.events({ 'click .accept': function (e, t) { console.log("Accept"); NetworkApp.update(this._id, {$set:{ status: "Accepted" }}); }, 'click .reject': function (e, t) { console.log("Reject"); NetworkApp.update(this._id, {$set:{ status: "Rejected" }}); } }) Accepted,因此代码可以连接到数据库,并且按钮会触发帮助程序。任何帮助表示赞赏!〜

简单架构:

Rejected

1 个答案:

答案 0 :(得分:1)

autoValue并不代表initial value:您的autoValue函数每次都在运行。

例如,对于createdAt,您应该:

createdAt: {
  type: Date,
  denyUpdate: true,
  autoValue() {
    if (this.isInsert) return new Date();
  },
},

这样可以避免插入后createdAt发生变化。

同样适用于状态:

status: {
  type: String,
  label: "Status",
  autoValue() {
    if (this.isInsert) return "Pending";
  },
  autoform: {
    type: "hidden",
  }
}