我将文档附加为addCrop模板的数据上下文。当成功提交autoform时,我想在此数据上下文中获取_id。我假设我可以从模板参数中获取它。但是,我不知道该怎么做。
AutoForm.addHooks(['addCrop'], {
onSuccess: function(operation, result, template) {
var _id = template.????
Router.go("cropEdit", {_id: _id});
}
});
答案 0 :(得分:0)
Autoform文档中的onSuccess函数如下所示:
onSuccess: function(formType, result) {}
如果您在路线中设置数据上下文,则可以使用模板助手来获取所需内容。
创建模板助手:
Template.yourTemplate.helpers({
getRouteContext: function(){
return yourObject;
}
});
在您的autoform中,将该函数作为属性添加到表单中:
{{#autoForm ... routeContext=getRouteContext}}
现在你可以在你的钩子中访问它:
AutoForm.addHooks(['addCrop'], {
onSuccess: function(operation, result) {
console.log(this.formAttributes.routeContext);
} });
答案 1 :(得分:0)
这似乎对我有用:
AutoForm.addHooks(['addCrop'], {
onSuccess: function(operation, result) {
var _id = this.template.id
Router.go("cropEdit", {_id: _id});
}
});
即。请注意onSuccess
处理程序中this.template
是如何存在的。