我的组织正在使用Ember插件在我们的应用程序之间开发一组共享组件。让我们调用此存储库app-components
。目前,组件应用程序的主要职责是分发CSS,字体和图像。
我们还正在构建一个生活风格指南,它将摄取我们的共享组件并以中立的方式呈现它们供开发人员参考。让我们调用此存储库app-styleguide
。我们的目标是使用app-styleguide
部署ember-deploy
以将此解决方案部署到Github Pages。网址遵循以下模式:
https://organization.github.io/app-styleguide/
当app-styleguide
应用程序进入gh-pages
分支并作为网页投放时,app-components
发送的所有字体和图片都会给我们404.我有引用了一些针对这个问题的不同解决方案,但我不断遇到我们尝试过的相同解决方案。
我尝试使用以下两个自动部署到github页面的ember插件:
最后我们选择了一个香草ember-cli-deploy解决方案,因为这两个插件很老了......
我已按照此处的说明添加rootUrl and
locationType properties to our
environment.js`文件,该文件无效:
我们的environment.js文件如下所示:
if (environment === 'production') {
ENV.rootURL = '/app-styleguide';
ENV.locationType = 'hash';
}
我们的请求仍然不会将app-styleguide
添加到来自Addon的资产的请求网址中。以下是Chrome DevTools网络标签中失败请求的示例:
Request URL:https://organization.github.io/assets/images/thumbnail-icons/person.svg
Request Method:GET
Status Code:404 Not Found
如您所见,app-styleguide
未添加到请求中。
非常感谢任何帮助!
答案 0 :(得分:0)
我能够在Ember Slack Community上获得一些帮助 (特别感谢@alexspeller)。事实证明,我需要更新资产指纹识别中的几个设置。
使用附带的broccoli-asset-rev
库,我必须修改ember-cli-build.js
以包含以下内容:
var app = new EmberApp(defaults, {
fingerprint: {
extensions: ['js', 'css', 'png', 'jpg', 'gif', 'map', 'svg', 'ttf', 'woff'],
prepend: '/app-styleguide/'
}
});
我需要更新选项以考虑SVG,TTF和& WOFF,以及适当的前置网段。
您可以在此处阅读有关此功能的信息: https://ember-cli.com/asset-compilation#fingerprinting-and-cdn-urls
可用选项: https://github.com/cibernox/broccoli-asset-rev?files=1#options