控制器在重新进入时停止实例化
Controller is stops getting instantiated on re-enter
我正在使用 angularJs UI 路由器。我这样定义了两个控制器:
.state('menu.test', {
url : '/test/',
views : {
'menuContent' : {
controller : 'TestController'
}
}
})
.state('menu.test1', {
url : '/test1/',
views : {
'menuContent' : {
controller : 'Test1Controller'
}
}
})
在 TestController 中我有:
angular.module('common.TestController', [])
.controller('TestController', function($scope) {
console.log("TestController");
function test() {
$state.go('menu.test1');
}
setTimeout(test, 3000);
});
然后在 Test1Controller 中:
angular.module('common.Test1Controller', [])
.controller('TestCon1troller', function($scope) {
console.log("Test1Controller");
function test() {
$state.go('menu.test1');
}
setTimeout(test, 3000);
});
我希望继续看到日志、TestController,然后是 Test1Controller。
但是,请注意它进入了 TestController,然后进入了 Test1Controller,但是没有返回到 TestController:
.state('menu.test', {
cache : false,
url : '/test/',
views : {
'menuContent' : {
controller : 'TestController'
}
}
})
所以 cache: false 成功了。现在控制器 entered/instantiated.
我正在使用 angularJs UI 路由器。我这样定义了两个控制器:
.state('menu.test', {
url : '/test/',
views : {
'menuContent' : {
controller : 'TestController'
}
}
})
.state('menu.test1', {
url : '/test1/',
views : {
'menuContent' : {
controller : 'Test1Controller'
}
}
})
在 TestController 中我有:
angular.module('common.TestController', [])
.controller('TestController', function($scope) {
console.log("TestController");
function test() {
$state.go('menu.test1');
}
setTimeout(test, 3000);
});
然后在 Test1Controller 中:
angular.module('common.Test1Controller', [])
.controller('TestCon1troller', function($scope) {
console.log("Test1Controller");
function test() {
$state.go('menu.test1');
}
setTimeout(test, 3000);
});
我希望继续看到日志、TestController,然后是 Test1Controller。 但是,请注意它进入了 TestController,然后进入了 Test1Controller,但是没有返回到 TestController:
.state('menu.test', {
cache : false,
url : '/test/',
views : {
'menuContent' : {
controller : 'TestController'
}
}
})
所以 cache: false 成功了。现在控制器 entered/instantiated.