我是Meteor智能包zipzap的维护者,我想了解该包的用户如何能够指定是否应该在服务器,客户端或两者上使用该包。该软件包在服务器和客户端上都提供了zip功能。但是,如果用户只需要服务器端zip功能,所有文件内容仍然会被发送到客户端,除了用户修改package.js之外,我没有看到如何更改其他内容。
package.js看起来像这样:
Package.on_use(function (api) {
api.add_files('path/to/file.js', ['server', 'client']);
});
这是硬编码的,因此用户无法指定将哪些文件传输到客户端。
我看到我的情况可能并不常见,因为大多数软件包要么为服务器或客户端提供功能,要么以某种方式相互交互。但我发现客户端软件包存在同样的问题,它提供了多种功能,但用户只需要很少的功能,因此大多数代码都不需要。是不是用户可以如何与包进行交互并说:
我知道包装系统还不是最终的,是Meteor 1.0之前完成的最后一件大事。因此,对于这个问题的任何答案都可能在下周过时。以为我还是会问。