【问题标题】:Controller should not reload on $location.path() [duplicate]控制器不应在 $location.path() 上重新加载 [重复]
【发布时间】:2017-05-08 14:07:02
【问题描述】:

无论如何可以在不重新加载控制器的情况下更改 url,我使用的是 angular ui-router,我的 url 结构类似于 /:param1/data/:param2在某些按钮上单击我正在将 URL 更改为 demo1/data/demo2 到 demo3/data/demo4 使用$location.path('demo3/data/demo4'),这会重新加载控制器,因此状态也会丢失。我只想在不重新加载控制器的情况下更改 url。

【问题讨论】:

    标签: javascript angularjs angular-ui-router


    【解决方案1】:

    尝试像这样使用 $state.go():

    $state.go('currentStateName', {param1: 'demo3', param2: 'demo4'})
    

    我无法验证,但如果状态保持不变,它不应重新加载。

    如需进一步阅读,请查看 TransitionOptions (1)。 $state.go() 的第三个可选参数。它包含一个选项'reload',默认为false。

    [1]: https://ui-router.github.io/ng1/docs/latest/interfaces/transition.transitionoptions.html#reload

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-07
      • 1970-01-01
      • 2015-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多