公共文件夹在Meteor中不起作用

时间:2014-01-04 16:25:14

标签: javascript meteor

我正在尝试将图像提供给我的meteor应用程序,因此我将图像放在公共文件夹中,但图像不会出现在应用程序中(它只显示损坏的图像)。但是,当我将图像放在根文件夹中时,它可以很好地工作。

在与此类问题相关的其他问题中,我应该查看app_root / .meteor / build / static /,但在我的应用程序中,我在构建文件夹中没有任何静态文件夹

可能是什么问题?

2 个答案:

答案 0 :(得分:1)

建议您使用./public目录来提供静态资产。

给出以下目录结构:

- server
- client
- public
  - css
    - bootstrap.css
  - images
  - js

您可以通过从链接文档中删除“公共”来提供静态资源。

<link href='/css/bootstrap.css'>

  

/ public中的文件按原样提供给客户端。用它来存储   图像等资产。例如,如果您有一个图像位于   /public/background.png,您可以使用background-image将其包含在HTML中或CSS中:   URL(/background.png)。请注意,/ public不是图片网址的一部分。

Official Meteor Docs - File Structure

答案 1 :(得分:0)

在我偶然发现原因之前,它对我不起作用。如果您正在提供位于根目录('/')的页面,只要myImage.jpg目录位于public目录中,任何此类图像都将有效:

<img src="myImage.jpg"/>

只要您的页面位于根路径上,它就会起作用。但是,如果您投放的路线如/pages/HJ4HIW87JURE6JU8,如果您使用相同的图片代码,则无法在public中找到该图片。为了完成这项工作,您需要在图片代码中添加/,告诉它从根开始:

<img src="/myImage.jpg"/>

使用根斜杠,您可以从路径结构中的任何位置提供公开图像。