首页 > angular第一次从A路由跳转到B路由时,B路由的控制器会初始化,第二次跳转到B路由时,B路由的控制器不初始化

angular第一次从A路由跳转到B路由时,B路由的控制器会初始化,第二次跳转到B路由时,B路由的控制器不初始化

angular第一次从A路由跳转到B路由时,B路由的控制器会初始化;第二次跳转到B路由时,如果路由中的参数变化了,则B路由的控制器再次进行初始化;如果路由中的参数没有变化,则B路由的控制器不会再次进行初始化。怎么样才能让,路由每次跳转都初始化一次它的控制器呢?

`//路由配置如下所示:

    .state('calendarUpdate',{
        url:"/calendarUpdate?itemOid",
        templateUrl:"templates/calendar/calendarUpdate.html",
        controller:"CalendarUpdateCtrl"
    })`
//跳转方式如下:
<a ui-sref=calendarUpdate({itemOid: itemOid})>跳转</a>

你是不是用了ionic了,ionic的缓存模式是不重新加载的。


你搞错了,不管路由中的参数有没有变化,控制器都会初始化,按照angular官方的教程:

出于内存占用和性能的考虑,控制器只会在需要时被实例化,并且不再需要就会被销毁。这意味着每次切换路由或重新加载视图时,当前的控制器会被AngularJS清除掉。


要加$watch

【热门文章】
【热门文章】