如何从Angular.JS中的子页面更新选项卡视图

时间:2015-03-21 17:01:48

标签: javascript angularjs html5 ionic-framework ionic

所以我尝试使用带有Ionic Framework的Angular.js在父标签窗口中更新列表视图,但我似乎无法弄清楚如何去做。

以下是子窗口的代码:

    $scope.currentUsername = Parse.User.current().get("username");

$scope.saveChanges = function saveChanges(user){
    var currentUser = Parse.User.current();
    var newUserName = user.newUsername;

    currentUser.set("username", newUserName);
    currentUser.save(null, {
        success: function(currentUser){
        alert("Changes successfully made!");
        }
    });
    $state.go('tab.more');
}

$scope.cancelChanges = function cancelChanges(){
$state.go('tab.more');
}

我试图将数据一旦发送到Parse回到父视图,但我不知道如何在脚本运行后刷新页面。在我的函数cancelChanges()中,我只是使用$ state.go返回到父视图,因为为什么在没有要更新的数据时更新视图。

以下是我父窗口的代码:

    $scope.currentUser = Parse.User.current().get("username");

$scope.editProfile = function editProfile(){
$state.go('tab.more-editusername');
}

$scope.logOut = function logOut(){
Parse.User.logOut();
alert("Logout successful!");
$state.go('login');
}

1 个答案:

答案 0 :(得分:0)

默认情况下,

离子视图被缓存...所以我不相信更新会发生,除非你强制它

来自文档

  

查看LifeCycle和事件视图可以缓存,这意味着控制器通常只加载一次,这可能会影响您的控制器   逻辑。要知道视图何时进入或离开,已添加事件   从视图范围发出的。这些事件还包含数据   关于视图,例如标题以及后退按钮是否应该   节目。还包含转换数据,例如转换类型   将会或将被使用的方向。

您可以尝试侦听$ionicView.enter事件,然后使用新数据更新视图