You can always extend the current context in a helper:
Template.parentTemplate.helpers({
iconContext: function() {
var result = _.clone(this);
result.withIcon = true;
return result;
}
});
And use it like this:
<template name="parentTemplate">
{{> myTemplate iconContext}}
</template>
Alternatively, you could create a more generic helper like this:
Template.registerHelper('extendContext', function(key, value) {
var result = _.clone(this);
result[key] = value;
return result;
});
And then choose the key/value pairs from within the html of any template:
<template name="parentTemplate">
{{> myTemplate extendContext 'withIcon' true}}
{{> myTemplate extendContext 'isAwesome' false}}
</template>
Either solution is more desirable than hiding the original data in a separate field, as it keeps the child template generic.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…