【发布时间】:2014-07-31 08:44:38
【问题描述】:
我正在创建一个包,对于客户端,我需要添加一些静态文件,例如字体和图像。在尝试了一些过时的解决方案后,我发现似乎没有什么对我有用。我应该如何添加这些文件?在我的包内创建一个公用文件夹?添加带有api.addFiles 的文件?
这甚至可能吗?
【问题讨论】:
-
很好的问题,您有没有提出问题来记录这个问题?
标签: meteor meteor-blaze
我正在创建一个包,对于客户端,我需要添加一些静态文件,例如字体和图像。在尝试了一些过时的解决方案后,我发现似乎没有什么对我有用。我应该如何添加这些文件?在我的包内创建一个公用文件夹?添加带有api.addFiles 的文件?
这甚至可能吗?
【问题讨论】:
标签: meteor meteor-blaze
您现在应该使用api.addAssets 将静态文件添加到您的包中。
您可以将静态资产添加到任何包中,它们将由流星提供。演示这一点的最简单方法是举个例子。查看hopscotch的来源。
该包包含一个img 目录和文件sprite-green-0.3.png。如果您查看package.js 文件,您可以看到它被添加到客户端:
api.addFiles('img/sprite-green-0.3.png', 'client');
将包添加到您的项目后,您可以通过此 URL 直接访问该文件:
http://localhost:3000/packages/hopscotch/img/sprite-green-0.3.png
总而言之,您可以使用api.addFiles 添加静态资产。所有资产都可以在/packages/[package name]/[path to asset] 之类的路径下访问。
请注意,您可以将 {isAsset: true} 作为第三个参数添加到 addFiles 以用于不应自动加载的资产。 This post 包含一个使用示例。
【讨论】:
{isAsset: true}。
对于像 favicon.ico 或字体文件这样的资产文件,您可以创建一个public 文件夹。
您可以查看此answer 或documentation。
【讨论】: