angular.js在不调用控制器的情况下更改url
angular.js change url without calling controller
我必须修复这样的解决方案:我的url是http://localhost:8080/#/dashboard
。在我的仪表板中,有一些功能需要加载,例如,当我的url将是http://localhost:8080/#/dashboard/20
时,我必须加载国家id等于20的城市;当我的url将是http://localhost:8080/#/dashboard/20/1
时,我不得不加载城市id等于1的地区。那么我的问题是什么:当我点击一些链接,url变为#/dashboard/20
时,我正在加载城市,之后我点击另一个链接,url变成#/dashboard/20/1
,但这里我的控制器正在刷新,所有数据都在再次加载,我想更改url,但不刷新控制器,当我的城市已经加载时,我必须有机会在那之后只加载地区,而不是同时加载两个地区。
我尝试了window.history.pushState
,但它不起作用,可能有什么方法可以禁用和启用我的$routeProvider
吗?
有什么想法吗?
我看到这一工作的唯一方法是引用同一个控制器或使用工厂/服务来维护变量。如果控制器粘在控制器上,则当状态发生变化时,控制器总是会发生变化。
编辑:顺便说一句,你看了一下ui.router吗?https://github.com/angular-ui/ui-router这是链接。我发现这比旧的$route 更有帮助
相关文章:
- 我们如何在不更改url的情况下使用锚点点击从一个页面重定向到另一个页面
- 如何在不在本地下载的情况下将url中提供的文件(pdf/doc)转换为json/string/base64格式
- 如何在不进入无限循环的情况下将网站重定向到Facebook画布URL
- 在不重新加载的情况下更改标头URL的任何方法
- (Ajax)在不重新加载内容的情况下登录页面url
- 如何在不重新加载URL的情况下查询Node.Js的后端并更新页面
- 如何在不重新加载的情况下更改url
- 在不使用任何http、https或ftp的情况下验证URL
- Angular/UI路由器-如何在不刷新所有内容的情况下更新URL
- Angularjs-在不更新当前控制器和模板的情况下更改URL
- 在浏览器上不打开url的情况下自动请求
- 如何在不刷新页面的情况下更改URL
- 如何在不重定向用户的情况下更改地址栏URL(不使用历史API?)
- 如何在不更改URL的情况下使用HTTP方法POST
- 如何在不重新加载当前页面的情况下加载URL
- 在不重新加载页面的情况下更新 URL 哈希
- 如何在URL中不指定.html、.json的情况下配置web.xml来服务任何请求
- 在没有 url 帮助的情况下在控制器之间传递数据
- 在不触发状态更改的情况下更新 URL
- 在不刷新的情况下更改页面 URL - 是否有跨浏览器解决方案