Javascript AngularJS控制器重新加载
我正在用ionic运行AngularJS Web应用程序 我在头版上看到了一系列文章。当我点击这个,你会看到一个单独的标签页。 当我从标题页转到选项卡页时,控制器第一次加载Javascript AngularJS控制器重新加载,javascript,jquery,angularjs,controller,ionic,Javascript,Jquery,Angularjs,Controller,Ionic,我正在用ionic运行AngularJS Web应用程序 我在头版上看到了一系列文章。当我点击这个,你会看到一个单独的标签页。 当我从标题页转到选项卡页时,控制器第一次加载 $scope.selectArt = function(artikel) { api.setCurrItem(artikel.artnr); $state.go('tab.voorraad'); } 将加载控制器 app.controller('ArtikelsCtrl', function($scope, $st
$scope.selectArt = function(artikel) {
api.setCurrItem(artikel.artnr);
$state.go('tab.voorraad');
}
将加载控制器
app.controller('ArtikelsCtrl', function($scope, $state, $location, api, artikels) {
console.log("loaded");
};
我有一个后退按钮,可以返回到首页。
单击某个项目时,将再次加载selectArt功能,但不会再次加载“ArtikeScrtl”
App.js
$stateProvider
.state('artikels', {
url: '/artikels',
templateUrl: 'app/artikels/artikels.html',
controller: 'ArtikelsCtrl'
})
.state('tab', {
url: '/tab',
abstract: true,
templateUrl: 'app/_shared/tabs.html'
})
.state('tab.voorraad', {
url: '/voorraad',
views: {
'tab-voorraad': {
templateUrl: 'app/voorraad/voorraad.html',
controller: 'VoorraadCtrl'
}
}
})
有人知道为什么控制器不在第二次加载吗?
看起来页面只是在$state.go上隐藏并再次显示。每个视图都会初始化一次控制器。当您传递控制器选项时,您正在指定其构造方式。更改视图会使控制器保持存在。
$state.go(to,params,{reload:true})
我希望它能对您有所帮助。更改为此,但不起作用<代码>$state.go('tab.voorraad',{},{reload:true})代码>