angular从另一个视图中的被调用函数获取数据

时间:2016-07-26 07:35:59

标签: javascript angularjs view routing

如何在视图中从控制器的功能中打印功能?我调用函数并发送用户的id和另一个视图,但是当我继续查看该视图时,我无法获取数据,如果我再次调用函数,那么我将丢失id。

我在浏览allUsers上的链接:

<a href="#/editUser" ng-click="userDataCtr.updateUser(user.identities[0].user_id)">Edit</a>

我的函数userDataController中的函数名为updateUser:

function updateUser(theId) {
        console.log(theId);
        dataService.allOrganization().then(function (data) {
            vm.allOrg = data;
        });
        dataService.getOneUser(theId).then(function(data) {
            vm.oneUserUpdate = data;
            vm.user={};
            vm.user.encryption = vm.oneUserUpdate.app_metadata.encryptionKey;
            vm.user.admin = vm.oneUserUpdate.app_metadata.admin;
            vm.user.organization = vm.oneUserUpdate.app_metadata.organizationId;
            if(vm.oneUserUpdate.app_metadata.roles[0] == 'ROLE_CRO') {
                vm.user.role_cro = 1;
            } else {
                vm.user.role_cro = 0;
            }
            if((vm.oneUserUpdate.app_metadata.roles[0] == 'ROLE_CLIENT') || (vm.oneUserUpdate.app_metadata.roles[1] == 'ROLE_CLIENT')) {
                vm.user.role_client = 1;
            } else {
                vm.user.role_client = 0;
            }
            console.log(vm.oneUserUpdate);
        });

        $scope.userDataCtr.user = {};
        $scope.submitForm = function(theId) {
            $scope.user.idUser = theId;
            dataService.updateUserPost($scope.user).then(function (data) {
                vm.oneUserInfo = data;
            })
        }
    }

我的申请:

          $routeProvider.when('/editUser', {
            controller: 'userDataController',
            controllerAs: 'userDataCtr',
            templateUrl: 'app/views/users/editUser.html',
            requiresLogin: true
        });

正如我所说,如果我在editUser.html中制作<div ng-init="userDataCtr.updateUser()">我正在丢失ID,但如果我不通过这种方式制作div,我就无法获得任何数据。我很困惑,任何人都可以帮助我吗?感谢

0 个答案:

没有答案