11

我有这个模板:

<template name="sample">
  <h1>Sample</h1>
</template>

在 Meteor 应用程序中,我可以通过这种方式将其添加到正文中(作为部分):

{{> sample}}

有用。我什至测试过调用 Template.sample(); 在浏览器控制台内,它可以工作。

当我将它移动到我的包中(即我的包文件夹中的 sample.html 文件)时,模板似乎消失了:Template.sample() is not a function每当我调用该函数时,我什至无法将它呈现为部分。

我有这个代码(很明显,包是通过文件在package.js我的应用程序中正确加载的):packages.meteor

Package.on_use(function (api) {
  api.add_files(['sample.html', 'sample.js'], 'client');
});

为什么这不起作用? 如何从我的包中将(反应性)模板附加到正文?

4

3 回答 3

30

解决了!添加这一行:

api.use(['templating'], 'client');
于 2012-11-17T16:13:34.980 回答
12

html在文件之前包含文件也很重要js

api.add_files("client/sampleTemplate.html", "client");
api.add_files("client/sampleTemplate.js", "client");
于 2014-08-04T08:10:34.240 回答
2

包含在packages.js包的文件中

api.use('meteor-platform');
api.use('ui');`

在第一个“.html”文件之后,在“.js”文件之后

api.addFiles('filename.html','client');
api.addFiles('filename.js','client');`
于 2015-12-15T14:11:32.420 回答