从包中扩展/覆盖 Meteor blaze 模板
Extend / override Meteor blaze template from packages
我使用 useraccounts:ionic 包,我想在其中一个模板的开头添加一行。
我知道我可以从 GitHub 获取 repo,然后在我的项目中使用它,但我宁愿通过 "meteor add" 继续使用它。
是否可以更改或"override" 个别模板?
您有几个选择:
- 查看 'aldeed:template-extension' 包;它导出一个 'replaces(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');
--
科比
我使用 useraccounts:ionic 包,我想在其中一个模板的开头添加一行。
我知道我可以从 GitHub 获取 repo,然后在我的项目中使用它,但我宁愿通过 "meteor add" 继续使用它。
是否可以更改或"override" 个别模板?
您有几个选择:
- 查看 'aldeed:template-extension' 包;它导出一个 'replaces(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');
-- 科比