模块文件夹中的公共静态资产?

时间:2014-11-13 23:58:09

标签: meteor directory-structure

我想在模块中组织我的Meteor应用程序,即为我的应用程序的每个特定部分或功能提供一个包含所有相关文件的文件夹。

这最好还包括静态资源,例如图像,但特殊public/文件夹似乎只在项目根目录中有效。

或者我错过了什么?

对于我的项目,感觉有点过分(不太干净,甚至),为我的应用程序的每个小模块创建一个合适的包。

1 个答案:

答案 0 :(得分:0)

不幸的是,唯一的方法是使用包。您可以将静态资产添加到包中,并且可以使用URL /packages/[package name]/[path to file]访问该文件。以下是hopscotchpackage.js示例:

Package.describe({
  summary: 'A framework to make it easy for developers to add product tours.'
});

Package.onUse(function(api) {
  api.versionsFrom('1.0.0');
  api.addFiles('img/sprite-green.png', 'client');
  api.addFiles('img/sprite-orange.png', 'client');
  api.addFiles('css/hopscotch.css', 'client');
  api.addFiles('js/hopscotch.js', 'client');
});

如您所见,所有图像都在包中的img目录下。要访问sprite-green.png文件,我会使用/packages/hopscotch/img/sprite-green.png