是否有办法在不重新加载 Controller 的情况下更改网址,我正在使用 Angular ui-router 并且我的网址结构类似于 /:param1/data/:param2在某些按钮上单击,我将网址从 demo1/data/demo2 更改为 demo3/data/demo4 使用$location.path('demo3/data/demo4'),这会重新加载 Controller ,因此状态也会丢失。我只想更改 url 而不重新加载 Controller 。
最佳答案
尝试像这样使用 $state.go() :
$state.go('currentStateName', {param1: 'demo3', param2: 'demo4'})
我无法验证,但如果状态保持不变,它不应该重新加载。
要进一步阅读,请查看 TransitionOptions ( 1 )。 $state.go() 的第三个可选参数。它包含一个选项“重新加载”,默认情况下为 false。
[1]: https://ui-router.github.io/ng1/docs/latest/interfaces/transition.transitionoptions.html#reload
关于javascript - Controller 不应在 $location.path() 上重新加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43849826/