我必须修复这样的解决方案:
我的信息中心中的我的网址为http://localhost:8080/#/dashboard
,有一些要加载的功能,例如当我的网址为http://localhost:8080/#/dashboard/20
时,我必须加载国家/地区ID等于20且我的网址为http://localhost:8080/#/dashboard/20/1
的城市我必须加载哪个城市id等于1的区域。所以我的问题是什么:
当我点击某些链接和网址更改为#/dashboard/20
时,我正在加载城市,之后我点击另一个链接并将网址更改为#/dashboard/20/1
,但此处我的控制器正在刷新,所有数据都重新加载,我想要更改网址但不刷新控制器,当我的城市已经加载时,我必须有机会在此之后加载区域,而不是一次只加载它们。
我尝试了window.history.pushState
但是它不起作用,可能有任何方法可以禁用和启用我的$routeProvider
吗?
任何想法?
答案 0 :(得分:2)
我看到这个工作的唯一方法是引用相同的控制器或使用工厂/服务来维护变量。 如果状态发生变化,控制器将始终发生变化,如果它们粘在它们上面。
编辑:顺便说一句,你看过ui.router了吗? https://github.com/angular-ui/ui-router 这是链接。我发现这比旧的$ route更有帮助