【发布时间】:2015-03-17 18:30:24
【问题描述】:
我对控制器何时被实例化感到困惑。此外,嵌套状态时如何实例化控制器。我可能对范围如何附加到视图和控制器感到困惑,也就是说,如果每个视图都有自己的控制器和范围,或者它们是否共享相同的范围。
有人可以解释一下控制器何时被实例化吗?在嵌套路由下,所有视图是否共享一个控制器和范围?当我切换状态并返回某个状态时会发生什么情况,是否会实例化另一个控制器?
以下是我的路线(配置文件):
.config (googleAnalyticsCordovaProvider, $stateProvider, $urlRouterProvider, IdleProvider, KeepaliveProvider) ->
$stateProvider
.state('app', {
url: '/app',
abstract: true,
templateUrl: 'templates/menu.html',
controller: 'AppController'
})
.state('app.pincode', {
url: '/pincode',
views: {
menuContent: {
templateUrl: 'templates/pincode-yield.html',
controller: 'PincodeController'
}
}
})
.state('app.pincode.create', {
url: '/create',
views: {
pincode: {
templateUrl: 'templates/pincode-create.html',
controller: 'PincodeController'
}
}
})
.state('app.pincode.pincodeLogin', {
url: '/login',
views: {
pincode: {
templateUrl: 'templates/pincode-login.html',
controller: 'PincodeController'
}
}
})
.state('app.pincode.settings', {
url: '/settings',
views: {
pincode: {
templateUrl: 'templates/settings.html',
controller: 'PincodeController'
}
}
})
【问题讨论】:
标签: angularjs angularjs-scope angular-ui-router angularjs-routing