(function (angular) {
'use strict';

angular
    .module('app')
    .controller('ListSharedContentCtrl', ['$scope','$log','UserService', 'ContractService','ContentOwnerService','PlatformPartnerService',function ($scope, $log, userService, contractService,contentOwnerService,platformPartnerService) {
        $scope.init = function () {
            var contractIds =[];
           var contentOwnerId;
            var platformPartnerId;
            var user=userService.getCurrentUser('true');
            var contentOwner=userService.isCurrentUserIsContentOwner();
            var platformPartner=userService.isCurrentUserIsPlatformPartner();
            if(contentOwner == "true")
            {
                contentOwnerService.getContentOwnerId().then(function(savedContentOwnerId) {

                 contentOwnerId=savedContentOwnerId;
                 console.log(contentOwnerId);//here I can log the value

                },function(error) {
                    $log.error("Error fetching contract id:" + error.message);
                });
            }
        console.log(contentOwnerId); //but Here I cant log the value..Its showing undefined
       } $scope.init();
    }]);
  })(angular);


现在我的问题是如何使变量“ contentOwnerId”的范围可用于整个函数?请有人帮助我,我无法弄清楚。。谢谢!

最佳答案

您两次声明了contentOwnerId;一旦在if块内部,一次在其外部。声明了一个outside,但从未分配值。显示为null的地方应该为null。

07-24 19:12