【发布时间】:2015-06-04 20:44:44
【问题描述】:
在常规 angularjs ui-router 状态下,每次激活状态时控制器都会运行。在处理离子应用程序中的命名视图时,我发现情况并非如此。命名的视图控制器每个元素(游戏)只运行一次。例如。用户显示游戏 -> 控制器运行。然后用户进入另一个状态,当他们返回显示相同的游戏控制器时不会再次运行 - 视图使用之前已经生成的范围。我想用控制器重新初始化游戏范围。
我的代码:
//app.js
.state('app.game', {
url: "/x/{gameID:int}",
views: {
'menuContent': {
templateUrl: "templates/html/my-game.html",
controller: 'GameCtrl'
}
}
})
...
//controllers.js
controllers.controller('GameCtrl', function ($scope, $stateParams, Game) {
//alert("running controller");
Game.get({id: $stateParams.gameID}, function(res){
$scope.game = res;
});
})
编辑:我实际上使用此代码进入游戏视图(目前正在使用 Steven Wexler 的指导思想)
<ion-view view-title="Games">
<ion-content>
<h1>Games</h1>
<ion-list>
<ion-item nav-clear menu-close href="#/app/x/{{game.id}}?guid= {{guid()}}" ng-repeat="game in games">
{{game.id}}
</ion-item>
</ion-list>
</ion-content>
</ion-view>
【问题讨论】:
标签: angularjs angular-ui-router ionic-framework