【发布时间】:2016-07-17 04:45:50
【问题描述】:
johnpapa Angular 2 风格指南 建议采用 folder-by-feature 方法。我明白了,您可以制作可重复使用的独立小角度组件。
所以,我制作了一个我想在另一个项目中重用的组件并将它放在它自己的文件夹中。我还添加了一张我希望这个组件显示到同一个文件夹的图像,所以它都是独立的。
<img class="logo" src="logo.png"/>
但这会尝试从根 localhost:3000/logo.png 加载图像。
我想这意味着我必须实际使用图像的确切路径,但这不会破坏其他人可以在其他项目中重用的组件的整个想法吗?
对此有何建议?
编辑澄清 我正在使用 Angular 2 快速入门中的文件夹结构,这意味着我的根文件夹是:
app/
node_modules/
index.html
package.json
tsconfig.json
所以,即使我使用路径 header/logo.png,它也不起作用。我必须做 app/header/logo.png。这实际上是一个绝对路径,如果我添加一个前导斜杠,实际上也同样有效:“/app/header/logo.png”。小于完整路径的任何内容都会破坏链接。这意味着如果有人想重用它,他们必须具有完全相同的文件夹结构。
我想这就是它的工作原理,我只是在学习 Angular 2,但在我看来,我应该能够从组件文件夹中加载资产 就像我可以使用模板或 css
【问题讨论】:
-
做绝对路径,这样你就可以到处使用了?
-
只需添加获取图像所需的最小路径,因此如果它位于:component1/images/logo.png,请编写:
-
我已经编辑了我的问题以进行澄清。这是关于如何将模块自包含在其文件夹中,而不用担心该文件夹在应用程序中的位置。这样它就可以在其他项目中轻松重用。但是,现在看来,它应该是这样工作的。
-
嗨,Rob,你解决过这个问题吗?
-
这个答案对我有帮助,它也应该对你有用
stackoverflow.com/a/42660412/4788476
标签: javascript angular