Meteor:如何创建后插入 Hook ?

标签 meteor

我正在使用autoform创建表格。我有下面的模板,它在提交表单时正确地将数据插入到集合中。我想要做的是,当插入“ContactDetails”集合成功完成后,将记录插入到另一个集合中。

<template name="contactDetailsForm">
 {{#if submitted}}
    {{> quickForm collection="ContactDetails" omitFields="createdBy" doc=editingDoc id="contactDetailsForm" type="update"}}
 {{else}}
         {{> quickForm collection="ContactDetails" omitFields="createdBy" id="contactDetailsForm" type="insert"}}
 {{/if}}
</template>

据我所知,我需要添加一个钩子(Hook)。我真的不确定我在做什么。我想它会看起来像这样:

  AutoForm.addHooks(['contactDetailsForm'], {
    after: {
      insert: function(error, result) {
        if (error) {
        console.log("Insert Error:", error);
        } else {
        console.log("Insert Result:", result);
        // NOW DO INSERT INTO OTHER COLLECTION
        }
      }
    }
});

谁能告诉我如何在另一个集合中成功完成插入后将记录插入到另一个集合中?

对此的任何建议/帮助/示例将不胜感激。

最佳答案

matb33:collection-hooks package 是创建此类钩子(Hook)的标准方法。首先添加它

meteor add matb33:collection-hooks

然后创建你的钩子(Hook):

ContactDetails.after.insert(function(userId, doc) {
  console.log("Inserted:", this._id);
  ...
});

关于Meteor:如何创建后插入 Hook ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26022897/

相关文章:

node.js - Nginx 和多个 Meteor/Nodejs 应用程序的问题

javascript - 使用 meteor 模板助手获取 DOM 元素

javascript - 动态生成数据目标

node.js - LAN + Internet Meteor 应用程序可以吗?

node.js - 检查 mongodb 上的日期范围内的日期是否冲突

javascript - 使用以表单提交的值在meteor中发布和订阅mongodb查询的结果

javascript - 如何使用 Meteor 模板助手编辑 Iron-Router 中作为参数传递的值?

meteor 删除已发布的包

javascript - Meteor.user()错误: Uncaught TypeError: Cannot read property 'name' of null

cordova - Meteor App.configurePlugin 和 Cordova 极端案例