meteor:共享模板

我用一个非常大的表单来构build一个使用Meteor的应用程序。 我使用了几乎相同的html模板两次,一次用于input,一次用于输出,但助手是不同的。

由于两个模板很难维护,我的问题是,如果有一种方法可以共享一个html模板或克隆它,这样我可以有相同的模板,但不同的帮手和事件?

你可以使用一个模板参数来达到这个目的。

HTML

<template name="parent"> {{> reusableTemplate mode="input"}} {{> reusableTemplate mode="output"}} </template> 

client/views/reusable-template/reusable-template.html

 <template name="reusableTemplate"> <form> <p>{{helper}}</p> <button type="submit"> Submit </button> </form> </template> 

JS

client/views/reusable-template/lib/input.js

 inputHelper=function (){ console.log(this.mode); // specific input code }; 

client/views/reusable-template/lib/output.js

 outputHelper=function(){ console.log(this.mode); // specific output code }; 

client/views/reusable-template/reusable-template.js

 Template.reusableTemplate.helpers({ helper:function(){ if(this.mode == "input"){ inputHelper.call(this); } else{ outputHelper.call(this); } } });