我正在试图找出如何更改路由参数,而无需重新加载整个页面。例如,如果我开始
但是将名称更新为“George”,将路由更改为:
http://www.example.com/#/page/george
如果我已经有http://www.example.com/#/page/:name路由。
没有重新加载位置。只能设置$ routeParams.name =“George”?
编辑:
或者,有没有办法更新http://www.example.com/#/page?name=George而不重新加载或重置页面?
好的,经过大量的搜索。我回答了我自己的问题。
我发现在角度文档中发现任何东西都是不可能的,但有时候,一旦找到它,它会改变你对你的问题的想法。
我从这里开始:http://docs.angularjs.org/api/ng. $位置
哪个带我到这里:http://docs.angularjs.org/guide/dev_guide.services. $位置
我带着这个问题:AngularJS Paging with $location.path but no ngView reload
我最后做的是:
我添加了$ location.search({name:’George’});我想改变名字(A $ scope。$ watch)。
但是,这仍然会重新加载页面,除非您执行底层StackOverflow链接,并向传递给$ routeProvider.when的对象添加参数。在我的情况下,它看起来像:$ routeProvider.when(‘/ page’,{controller:’MyCtrl’,templateUrl:’path / to / template’,reloadOnSearch:false})。
我希望这可以节省别人的头痛。