如何在 Angular 1.5 中刷新浏览器时保留相同的页面?
How to retain same page when browser is refreshed in Angular 1.5?
在我的项目中,路由器是这样设置的:
myApp.component("rsapproot", {
transclude: true,
template: "<ng-transclude></ng-transclude>",
$routeConfig: [
{ path: "/login", component: "rsapplogin", name: "Login" },
{ path: "/tenant", component: "rsapptenantid", name: "Tenant" },
{ path: "/my-dashboard", component: "rsappmyrdash", name: "MyDash" },
{ path: "/my-reports", component: "rsappmyreports", name: "AppReports"},
{ path: "/equipment-details/:type/:id", component: "rsequipmentdetails", name: "EquipmentDetails" },
{ path: "/my/resources", component: "rsappresourceslist", name: "AppResourceList" },
现在 F5 后或粘贴时的预期行为 URL 分别是重新加载当前路径或导航到所述路径,而不是加载初始应用程序路径。
我知道为了在reload app后保留页面,应该给一个url表示路径。
但是那个东西已经在那里了,而且路径都是唯一的。
那我错过了什么?
这需要在服务器端处理。这是一个说明当前问题的示例:
您在其初始路径 /
加载应用程序,然后导航至 /login
。当您刷新页面时,您的 Web 浏览器会向 http://yourdomain.com/login
发送 GET 请求(我假设)不会通过向客户端发送您的 Angular 应用程序 (index.html) 来响应.
您需要配置您的服务器以使用您的 index.html 响应所有指定 Angular 路径的 GET 请求。这通常通过包罗万象的路线 /*
而不是单独指定每条路线来完成。
在我的项目中,路由器是这样设置的:
myApp.component("rsapproot", {
transclude: true,
template: "<ng-transclude></ng-transclude>",
$routeConfig: [
{ path: "/login", component: "rsapplogin", name: "Login" },
{ path: "/tenant", component: "rsapptenantid", name: "Tenant" },
{ path: "/my-dashboard", component: "rsappmyrdash", name: "MyDash" },
{ path: "/my-reports", component: "rsappmyreports", name: "AppReports"},
{ path: "/equipment-details/:type/:id", component: "rsequipmentdetails", name: "EquipmentDetails" },
{ path: "/my/resources", component: "rsappresourceslist", name: "AppResourceList" },
现在 F5 后或粘贴时的预期行为 URL 分别是重新加载当前路径或导航到所述路径,而不是加载初始应用程序路径。
我知道为了在reload app后保留页面,应该给一个url表示路径。
但是那个东西已经在那里了,而且路径都是唯一的。
那我错过了什么?
这需要在服务器端处理。这是一个说明当前问题的示例:
您在其初始路径 /
加载应用程序,然后导航至 /login
。当您刷新页面时,您的 Web 浏览器会向 http://yourdomain.com/login
发送 GET 请求(我假设)不会通过向客户端发送您的 Angular 应用程序 (index.html) 来响应.
您需要配置您的服务器以使用您的 index.html 响应所有指定 Angular 路径的 GET 请求。这通常通过包罗万象的路线 /*
而不是单独指定每条路线来完成。