如果我回到主页选项卡,每次都能获得新的http响应?
我尝试了几件事。我读到了“$ state.reload()”,但我不知道在哪里使用它。 ng-click在tabs.html中不起作用。
控制器:
.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>
模块:
.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'
}
}
})
非常感谢!
答案 0 :(得分:0)
在控制器
中$scope.loadHttp = function(){
$http.get("api.php")
.then(function successCallback(response) {
$scope.plan = response.data;
}, function errorCallback(response) {
console.error("Failed HTTP get: " + response.status + " " + response.data);
});
};
以视图为例
<div ng-click ="loadHttp()">Tab</div>
答案 1 :(得分:0)
用户选择。
<ion-tab
title="Home"
icon="my-icon"
href="#/tab/home"
on-select="onTabSelected()"
on-deselect="onTabDeselected()">
</ion-tab>
这是Demo
答案 2 :(得分:0)
现在似乎有用了。感谢@praHoc。
我添加了三次“缓存”,没有别的。
.state('tab', {
url: '/tab',
abstract: true,
cache: false,
templateUrl: 'templates/tabs.html'
})
// Each tab has its own nav history stack:
.state('tab.home', {
url: '/home',
cache: false,
views: {
'tab-home': {
cache: false,
templateUrl: 'templates/tab-home.html',
controller: 'HomeCtrl',
}
}
})