链接到 Meteor.js 和 Telescope 中 public 文件夹中的资产
Linking to assets in the public folder in Meteor.js and Telescope
我在 Meteor 上使用 Telescope,但无法访问我的 public 文件夹中的任何内容。在我的 Meteor 应用程序中,我有一个包含 public 文件夹的包 - 其中包含 images/fonts,但我未能正确地 link。
我是 Meteor 和 Telescope 的新手,所以我想我搞砸了一些基本的东西。这些是我正在使用的:
/public
的文件结构路径:
MyApp/Packages/ThemeName/public/
其中包含三个文件夹:icons
、images
和fonts
。
到 link 到我 CSS 中的字体,我正在使用 @font-face
:
@font-face {
font-family: Neuzeit;
src:
url("/fonts/neuzeit-book.css"),
url("/fonts/neuzeit-book.eot"),
url("/fonts/neuzeit-book.svg"),
url("/fonts/neuzeit-book.ttf"),
url("/fonts/neuzeit-book.woff");
}
body {
font-family: Neuzeit;
}
但是这些字体没有加载,我在控制台中收到错误消息:Failed to decode downloaded font: http://localhost:3000/fonts/neuzeit-book.ttf [index:1]
。我为每个来源都得到了这个。此外,我还尝试 link 到同一包中我的模板中的图像:
<img src="/icons/icon-close.png" />
但后来我得到一个损坏的 link 图标而不是页面上的图像 - 奇怪的是,控制台中的图像没有 404。
这是权限问题吗?我已经提到 this SO article 但这最终变得无关紧要,因为我相信我写的是正确的路径吗?请指教!
/public
需要位于应用程序的根目录下,而不是在 /Packages/ThemeName/public/
下
您链接到错误的 URL:
而不是这个:
url("/fonts/neuzeit-book.css")
应该是这样的:
url("/packages/your-theme-name/public/fonts/neuzeit-book.css")
但是您应该确保它通过 addFiles() 包含在您的 package.js 文件中
我在 Meteor 上使用 Telescope,但无法访问我的 public 文件夹中的任何内容。在我的 Meteor 应用程序中,我有一个包含 public 文件夹的包 - 其中包含 images/fonts,但我未能正确地 link。
我是 Meteor 和 Telescope 的新手,所以我想我搞砸了一些基本的东西。这些是我正在使用的:
/public
的文件结构路径:
MyApp/Packages/ThemeName/public/
其中包含三个文件夹:icons
、images
和fonts
。
到 link 到我 CSS 中的字体,我正在使用 @font-face
:
@font-face {
font-family: Neuzeit;
src:
url("/fonts/neuzeit-book.css"),
url("/fonts/neuzeit-book.eot"),
url("/fonts/neuzeit-book.svg"),
url("/fonts/neuzeit-book.ttf"),
url("/fonts/neuzeit-book.woff");
}
body {
font-family: Neuzeit;
}
但是这些字体没有加载,我在控制台中收到错误消息:Failed to decode downloaded font: http://localhost:3000/fonts/neuzeit-book.ttf [index:1]
。我为每个来源都得到了这个。此外,我还尝试 link 到同一包中我的模板中的图像:
<img src="/icons/icon-close.png" />
但后来我得到一个损坏的 link 图标而不是页面上的图像 - 奇怪的是,控制台中的图像没有 404。
这是权限问题吗?我已经提到 this SO article 但这最终变得无关紧要,因为我相信我写的是正确的路径吗?请指教!
/public
需要位于应用程序的根目录下,而不是在 /Packages/ThemeName/public/
您链接到错误的 URL: 而不是这个:
url("/fonts/neuzeit-book.css")
应该是这样的:
url("/packages/your-theme-name/public/fonts/neuzeit-book.css")
但是您应该确保它通过 addFiles() 包含在您的 package.js 文件中