Reputation: 35400
I have this template:
<template name="sample">
<h1>Sample</h1>
</template>
Inside a Meteor app I can add this to body this way (as a partial):
{{> sample}}
It works. I've even tested to call Template.sample(); inside browser console and it works.
When I move this inside my package (i.e. a sample.html file inside my package folder) the template seems to disappear: I get Template.sample() is not a function
whenever I call the function and I am not even able to render it as a partial.
I have a package.js
with this code (and obviously the package is correctly loaded inside my app through packages
file in .meteor
):
Package.on_use(function (api) {
api.add_files(['sample.html', 'sample.js'], 'client');
});
Why this doesn't work? How can I append a (reactive) Template to body from my package?
Upvotes: 11
Views: 3203
Reputation: 21
Include in file packages.js
of package
before
api.use('meteor-platform');
api.use('ui');`
after first ".html" files, after ".js" files
api.addFiles('filename.html','client');
api.addFiles('filename.js','client');`
Upvotes: 2
Reputation: 4007
it is also important to include the html
file before the js
api.add_files("client/sampleTemplate.html", "client");
api.add_files("client/sampleTemplate.js", "client");
Upvotes: 12