在检查插入成功后重定向提交表单的标准模式,在Meteor上使用AutoForm&铁路由器?

时间:2015-04-07 12:18:05

标签: javascript meteor iron-router meteor-autoform

我使用Meteor和AutoForm& amp;铁路由器。

我有一个用于插入记录的autoform,我想在成功插入后重定向到另一个页面以查看记录。 普遍接受的方式是什么?

如果我使用标准的autoform插件,如:

{{#autoForm collection="Articles" id="articleSubmit" type="insert"}} 

我无法看到如何重定向?

如果我使用'方法'像这样打字:

{{#autoForm collection="Articles" id="articleSubmit" type="method"}} 

然后我必须编写一个不特别干的插入方法。

1 个答案:

答案 0 :(得分:6)

表单是一种表单,如果您使用type="method"表示您使用的是Meteor.method,表单将为您处理,Meteor.call

现在如果你想做一些Router.go(),你需要编写一些JS代码,你可以使用钩子,它带有autoform包,例如这样的

Articles.hooks({
  contactForm: {
    onSubmit: function (insertDoc, updateDoc, currentDoc) {
      if (someHandler(insertDoc)) {
        this.done();
        Articles.clean(doc); / you can do more logic here, cleaning the form.
        Router.go('thePath');
      } else {
        this.done(new Error("Submission failed"));
      }
      return false;
    }
  }
});

因此,您不需要使用通用'submit #articleSubmit'更好地使用自动表单API。