Ember 未在生产环境中加载某些图像

2024-05-03

我有一个 Ember-cli 1.13 应用程序,它在公共目录中存储了很多图像。现在,它将正确加载除特定组件中的图像之外的所有图像。

该组件的调用方式如下:

{{list-item url="list-url" name="List Name" price="240"}}

在内部,该组件是这样的:

<a href="http://example.com/{{url}}">
  <img src="/{{url}}.png" alt='Picture of the {{name}}' />
  <p class="item-name">{{name}}</p>
  ...
</a>

当我构建应用程序并启动到 heroku 时,损坏的路径是

https://ridiculous-name-123123.herokuapp.com/list-item.png

这与本地主机路径相同,只是显然有不同的域。

所有其他图像在不与组件一起使用时都可以工作。

我哪里出错了?


当您使用生产环境构建时,您的资产会经历称为指纹识别 http://ember-cli.com/user-guide/#fingerprinting-and-cdn-urls.

这里的问题似乎是您的“构建”网址链接到未指纹识别的文件,一种解决方案是将这些图像移动到一个文件夹中,并将它们排除在您的指纹识别之外。ember-cli-build.js:

var app = new EmberApp({
  fingerprint: {
    exclude: ['myComponentImages/']
  }
});

更好的解决方案是拥有完整的 url 或传递一个可以更改显示图像的类,因为这些看起来像是静态资产而不是用户上传的内容。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ember 未在生产环境中加载某些图像 的相关文章

随机推荐