【问题标题】:Is it possible to use jade inside a local meteor package?是否可以在本地流星包中使用玉?
【发布时间】:2015-10-30 08:07:07
【问题描述】:

在尝试将我的流星应用程序拆分为单独的包时,我在尝试封装模板时遇到了问题。包名是gs-users:

packages/gs-users/package.js

Package.onUse(function(api) {
    api.versionsFrom('1.1.0.2');
    api.use('mquandalle:jade');
    api.addFiles('views/list.jade');
    api.addFiles('gs-users.js');
});

我的模板文件packages/gs-users/views/list.jade

template(name="GsUsersList")
    p Ola señior!!

在我的主要应用程序路由定义中(lib/routes.js):

Router.route('/', function() {
    this.render('GsUsersList');
});

流星现在抱怨:Couldn't find a template named "GsUsersList" or "gsUsersList". Are you sure you defined it?

当使用templating 包而不是mquandalle:jade 和.html 文件而不是gs-users 包中的.jade 文件时,一切正常。但我真的很讨厌纯 HTML ;)

【问题讨论】:

  • 我不知道你的问题的答案,但既然你需要手动列出所有文件,为什么不通过手动调用jade编译器在模板中编译它们?
  • 你能提供一个代码 sn-p 来做这个吗?

标签: javascript node.js meteor


【解决方案1】:

解决方案比我想象的要简单。只需使用 waitingkuo:jade 而不是 mquandalle:jade 并添加 templating 作为依赖项:

Package.onUse(function(api) {
  api.versionsFrom('1.1.0.3');
  api.use('waitingkuo:jade');
  api.use('templating');
  api.addFiles([
    'le-template.jade',
  ], ['client']);
});

像魅力一样工作!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-02
    • 1970-01-01
    • 1970-01-01
    • 2016-04-20
    • 2015-06-17
    • 2015-05-20
    • 1970-01-01
    • 2012-07-26
    相关资源
    最近更新 更多