2017-04-01 127 views
-1

嗨我不断收到此错误。我试图让破碎的图像图标不出现在Angular Ionic应用程序中。我有这个功能,但它一直说anonImg没有定义。我不知道如何定义这个?函数未定义在角

function anonImg(image){ 
 
    image.src = 'https://instagramimages-a.akamaihd.net/profiles/anonymousUser.jpg'; 
 
    }

和我的HTML是

<ion-content class="climb-pics"> 
 
     <img ng-src="{{urlForImage(selected_.images)}}"/> 
 
     <img onerror="anonImg(this);" ng-src="{{urlForImage(selected_.imageTwo)}}"/> 
 
     <button type="button" class="button button-assertive" ng-click="closeModal(1)">Close</button> 
 
     <p>&nbsp;</p> 
 
    </ion-content>

我应该在一个函数或东西被包装的功能?我只是不现在什么时候我得到的错误做“的ReferenceError:anonImg没有定义”

这里是我的控制器代码:

.controller('ClimbController', ['$scope', '$stateParams', 'Products', 'Climbs', '$ionicModal', '$localStorage', '$cordovaCamera', '$cordovaFile', 
    function($scope, $stateParams, Products, Climbs, $ionicModal, $localStorage, $cordovaCamera, $cordovaFile) { 

     $scope.product_id = $stateParams.productId; 
     console.log('ClimbController: ' + $scope.product_id); 
     // ClimbsController: 2 

     $scope.urlForImage = function(imagePath) { 
      console.log('imagePath: ' + imagePath); 
      return Products.urlForImage($scope.product_id, imagePath); 
     } 

     var filename = Products.getFilenameFromLocalStorage($scope.product_id); 
     console.log(filename); 

     var climbId = $stateParams.climbId; 
     var areaId = $stateParams.areaId; 

     if (!isNaN(climbId)) { 
      climbId = parseInt(climbId); 
     } 

     if (!isNaN(areaId)) { 
      areaId = parseInt(areaId); 
     } 

     $scope.selected_ = {}; 
     $scope.items = []; 
     $scope.details = true; 
     $scope.data = ''; 
     $scope.noteParams = { 
      text: null 
     }; 

     // looping though all data and get particular product 
     $scope.selectClimb = function(areas){ 
      areas.forEach(function(data) { 
       if(data._id == climbId){ 
        $scope.selected_ = data; 
       } 
      }); 
     } 

     // get all posts // try some function to get a single produt from server 
     $scope.getPosts = function(){ 
      Products.loadGuidebook(filename).then(function(data) { 
       // NOTE: data = the whole feed.json file 
       console.log(data); 

       // data = feed.json file 

       var climbs = []; 
       data.areas.map(function(area) { 
        if (area._id === areaId) { 
         climbs = area.climbs; 
        } 
       }); 
       $scope.selectClimb(climbs); 
      }, 
      function (error) { 
       console.log(error); 
      }); 
     } 

     // picture slider logic 
     $scope.allImages = $scope.images; 

     //hide div with broken images 
     anonImg = function(image){ 
      image.src = 'https://instagramimages-a.akamaihd.net/profiles/anonymousUser.jpg'; 
     } 

     $scope.load(); 
     $scope.getPosts(); 
    } 
]) 
+0

课程后的控制器代码 – Sajeetharan

+0

,您不能使用功能的HTML,如果你没有这个功能分配给范围,所以你应该设置scope.nonImage = function(){blablalbla;} –

回答

0

您还没有发布的控制器代码,你应该有在您的控制器和功能$范围应界定为,

$scope.anonImg = function(image){ 
    image.src = 'https://instagramimages-a.akamaihd.net/profiles/anonymousUser.jpg'; 
} 
+0

所有的确实是刹车我的控制器 – user1155141

+0

这里是控制器 – user1155141