Wie kann ich jedes Mal eine neue HTTP-Antwort erhalten, wenn ich zum Home-Tab zurückkomme?Wie ruft man die http-Anfrage auf jeder in AngularJS eingegebenen Seite auf?
Ich habe mehrere Dinge ausprobiert. Ich habe über "$ state.reload()" gelesen, aber ich weiß nicht, wo ich es verwenden soll. ng-click funktioniert nicht in tabs.html.
Controller:
.controller('HomeCtrl', function ($scope, $http) {
'use strict';
// how to call this every time on coming back to this tab?
$http.get("api.php")
.then(function successCallback(response) {
$scope.plan = response.data;
}, function errorCallback(response) {
console.error("Failed HTTP get: " + response.status + " " + response.data);
});
// ...
tabs.html
<ion-tabs>
<ion-tab title="Home" href="#/tab/home">
<ion-nav-view name="tab-home"></ion-nav-view>
</ion-tab>
<!-- ... -->
</ion-tabs>
index.html:
<ion-nav-view></ion-nav-view>
Modul:
.config(function ($stateProvider, $urlRouterProvider) {
$stateProvider
.state('tab', {
url: '/tab',
abstract: true,
templateUrl: 'templates/tabs.html'
})
.state('tab.home', {
url: '/home',
views: {
'tab-home': {
templateUrl: 'templates/tab-home.html',
controller: 'HomeCtrl'
}
}
})
Vielen Dank!
betrachten Sie 'angular.run', und dort abonnieren Sie' stateChangeStart', stellen Sie die Anfrage dort. –