刷新后退按钮上的页面,角度/离子
Refreshing page on a back button in angular/ionic
我正在尝试刷新后退按钮上的页面以获取文章列表的新数据。更具体地说,我有一个文章列表和文章页面,在它们上我都可以选择喜欢一篇文章。当用户喜欢文章页面上的文章时,如果点击后退按钮,文章列表页面上的"赞"图标将不会刷新新状态。我尝试在单击后退按钮时创建一个函数,然后再次获取数据,但图标没有改变。我在console.log
上获得的数据是新数据,如果用户喜欢该文章,我得到的值是正确的like=1
,但图标没有改变。这是我的代码:
我在首页控制器中收到这样的文章:
ArticleService.all().then(function(data){
$scope.articles = data;
})
在我的文章页面html中,我有一个后退按钮链接:
<a ng-click="refresh()"></a>
在我的文章列表中,我检查我有哪个值喜欢,然后根据该值显示图标:
<a ng-if="article.like == 1" ng-click="like(article)" class="subdued">
<img class="social-images" src="icons/heart.svg"/> Lik
</a>
<a ng-if="article.like == 0" ng-click="like(article)" class="subdued">
<img class="social-images" src="icons/heart-outline.svg"/> Lik
</a>
这是我在文章控制器中的函数:
$scope.refresh = function (){
return $state.go('main.front').then(function(state) {
ArticleService.all().then(function(data){
$scope.articles = data;
console.log(data);
})
})
};
但由于该功能位于文章控制器中,因此无法刷新首页上的数据。如何从具有不同控制器的页面刷新首页控制器中的数据?
$stateProvider.state('myState', {
cache: false,
url : '/myUrl',
templateUrl : 'my-template.html'
})
尝试在您的状态中添加cache : false
以在输入时重新加载状态...
尝试以下方法之一:
1.
$scope.$on('$ionicView.beforeEnter', function () {
$scope.refresh();
});
$scope.refresh = function (){
return $state.go('main.front').then(function(state) {
ArticleService.all().then(function(data){
$scope.articles = data;
console.log(data);
})
})
};
阿拉伯数字。
$scope.$on('$tateChangeSuccess', function () {
$scope.refresh();
});
- 这可能是缓存问题。所以添加,
<ion-view cache-view="false" view-title="My Title!"> </ion-view>
相关文章:
- 如何在离子框架+有角度的框架中制作顶部标签
- 我必须点击两次才能激活任何按钮操作(离子/角度)
- 离子和角度:带标签的应用程序上的路线
- 离子和角度:json不会;t显示
- 离子/角度$urlRouterProvider.otherwise问题
- 在阵列中推送数据-角度/离子
- 离子/角度日期输入使用时刻以编程方式设置
- 离子/角度替代$stateChangeStart
- 以离子和角度动态提醒$scope.data
- 离子/角度指令绑定到滚动
- 制作一个$window.location.reload(true);在离子/角度中仅执行一次
- 以角度 + 离子形式显示的条件:显示 Id 是否具有特定值
- 离子/角度:使用“大纲”详细信息模式时,不会显示详细信息页面
- 角度/离子点击事件传播
- 单元测试角度/离子项目
- 角度/离子谷歌地图的状态变化
- 角度离子徽章计数未更新
- 重新加载重复角度/离子
- 角度/离子 - 型号不会更新控制器中的$scope
- 刷新后退按钮上的页面,角度/离子