Javascript 如何访问图像取决于通知类型

Javascript 如何访问图像取决于通知类型,javascript,angularjs,Javascript,Angularjs,我将notificationType存储在后端json文件中,并在NotificationController中存储了相同的notificationType和名称和图像(它应该显示哪些图像取决于通知类型),以便进行比较。 现在我想访问的图像取决于通知类型。 我试过这样做,但它只拍摄了它正在拍摄的第0个位置的图像 我知道我的错误是什么,但是我不知道怎么做。有人能帮我吗。。。 我的密码是 controller.js $scope.typeofnotification =[{name:'offer',

我将notificationType存储在后端json文件中,并在NotificationController中存储了相同的notificationType和名称和图像(它应该显示哪些图像取决于通知类型),以便进行比较。 现在我想访问的图像取决于通知类型。 我试过这样做,但它只拍摄了它正在拍摄的第0个位置的图像

我知道我的错误是什么,但是我不知道怎么做。有人能帮我吗。。。 我的密码是

controller.js

$scope.typeofnotification =[{name:'offer', imges: './resources/remote.png'},
                {name:'discount', imges:'./resources/mic.png'},
                {name:'upgrades', imges:'./resources/play-icon.png'}];


/*var len = $scope.typeofnotification.length*/
$scope.setNotificationImage = function(){

    var notificationImage;

    for (var i = 0; i < $scope.typeofnotification.length; i++) 
    {
        if($scope.notificationData[i].notificationType == $scope.typeofnotification[i].name)
        {
           return notificationImage = $scope.typeofnotification[i].imges;

        }
    }

};
$scope.typeofnotification=[{name:'offer',imges:'./resources/remote.png'},
{name:'discount',imges:'./resources/mic.png'},
{name:'upgrades',imges:'./resources/play icon.png'}];
/*var len=$scope.typeofnotification.length*/
$scope.setNotificationImage=函数(){
var通知图像;
对于(变量i=0;i<$scope.typeofnotification.length;i++)
{
if($scope.notificationData[i].notificationType==$scope.typeof通知[i].name)
{
return notificationImage=$scope.typeofnotification[i].imges;
}
}
};
notificationData[i]。notificationType从后端键入此行

one.HTML

<div class="notifications" ng-repeat="item in notificationData">            
<img id="notificationImages" yo-src="setNotificationImage()"/>  
<div id="notificationdata" yo-attr="{html: 'item.desc'}"></div>                 
<div id="notificationdate" yo-attr="{html: 'item.date'}"></div>                 
</div>

在ng repeat指令中,notificationdata来自后端 输出我得到的是,对于所有通知,我只得到第一个图像或位置图像。 但我希望图像取决于通知类型。 对于上述代码,如果通知类型为“添加内容”,则需要显示remote.png;如果通知类型为“折扣”,则需要显示mic.png;最后,如果通知类型为“升级”,则需要显示play-icon.png

请检查下面的图片


在您的解决方案中,您只能获得相同的值,因为当满足第一个条件时,返回该图像url而不是项目图像url

您需要使用重复的
项来检查,而不是
$scope.notificationData
所以需要在调用
setNotificationImage
函数时传递
,并使用此
项进行检查。notificationType===$scope.typeofnotification[i]。name

比如:

HTML:


//通行证项目
控制器:

$scope.setNotificationImage = function(item){

    for (var i = 0; i < $scope.typeofnotification.length; i++) 
    {
        if(item.notificationType === $scope.typeofnotification[i].name)
        {
           return  $scope.typeofnotification[i].imges;

        }
    }

};
$scope.setNotificationImage=函数(项){
对于(变量i=0;i<$scope.typeofnotification.length;i++)
{
if(item.notificationType==$scope.typeofnotification[i].name)
{
返回$scope.typeofnotification[i].imges;
}
}
};

在您的PS中,您的notificationType和NotiAction的类型有不同的网络名称?不,先生,两者都是相同的,但问题是每次函数从零开始时,它都显示相同的图像。不,每次通知都显示相同的图像。欢迎您,如果有帮助,您可以接受此答案:)@chandru
$scope.setNotificationImage = function(item){

    for (var i = 0; i < $scope.typeofnotification.length; i++) 
    {
        if(item.notificationType === $scope.typeofnotification[i].name)
        {
           return  $scope.typeofnotification[i].imges;

        }
    }

};