Ember CLI / 浏览器刷新 / 生产 / 404

2023-11-21

我使用 Ember CLI 0.1.15 和 emberjs 开发了我的 web 应用程序。 1.8.1

我使用以下命令构建了应用程序: ember build --environment production ,然后我从项目的 dist 文件夹下生成的文件创建了 WAR,然后将 WAR 放在 tomcat 的 webapps 文件夹中。

所以,当我打开应用程序时:http://mytomcat/myapp/...一切顺利,我看到了我的登录屏幕,我登录了,并在我的应用程序中导航,一切都很好。我还可以使用后退/前进按钮,并且 ember 可以很好地处理过渡。

但是当我单击浏览器上的刷新按钮时 - 浏览器的地址栏显示http://mytomcat/myapp/inventory/就在那一刻——我收到了来自tomcat的404回复。

然后我就明白了为什么会发生这样的情况:刷新按钮向tomcat发送了对路径/myapp/myinventory/的请求……当然路径/myinventory在服务器上不存在。我们在浏览器上看到的所有路由——除了基本 URL,http://mytomcat/myapp/-- 在客户端生成。

所以,我的问题是:处理这种情况的正确方法(在余烬中)是什么?我需要刷新按钮才能正常工作。 ember有什么办法拦截刷新按钮点击事件吗?

我想这个问题与此有关:https://github.com/stefanpenner/ember-app-kit/issues/486,但它没有我需要的答案。

提前致谢, 拉卡

- - 更新 - -

可能相关:http://eviltrout.com/2014/04/10/the-refresh-test.html


  1. Inside config/environment.js文件中,有一个属性叫做locationType。将其值设置为hash

  2. 手动移动文件/dist文件夹既耗时又烦人。相反,您可以指定一个output-path您的财产.ember-cli与您尝试将文件移动到的 webapps 内的位置。另一种选择是指定此选项ember server or ember build

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

Ember CLI / 浏览器刷新 / 生产 / 404 的相关文章

随机推荐