从包中扩展/覆盖Meteor blaze模板

时间:2016-01-03 19:36:14

标签: meteor ionic-framework meteor-blaze

我使用useraccounts:ionic包,我想在其中一个模板的开头添加一行。

我知道我可以从GitHub获取回购然后在我的项目中使用它,但我宁愿继续通过“meteor add”使用它。

是否可以更改或“覆盖”单个模板?

1 个答案:

答案 0 :(得分:2)

为您提供几种选择:

  • 查看'aldeed:template-extension'包;它导出一个'替换(templateName)'方法,可以做你想要的。
  • 实现您自己的覆盖方法,如下所示:

    //
    // Helper shim to override template renderFunctions
    // Inspired by replaces() from aldeed:template-extension package. Good stuff.
    Template.prototype._override = function (replacement){
        if (typeof replacement === 'string') {
            replacement = Template[replacement];
        }
        if (replacement && replacement instanceof Blaze.Template ) {
            this.renderFunction = replacement.renderFunction;
        }
    }
    
    ...
    
    Template.someTemplateILike._override('myReplacementTemplate');
    

- KOBI