如果没有Avatar,请从json中检查性别并放置在img标记中

If no Avatar, check gender from json and place in img tag

本文关键字:img Avatar 请从 json 如果没有 检查      更新时间:2023-09-26

我构建了一个应用程序(这是我的第一个应用程序),在那里我给用户上传用户头像和设置性别的选项。如果(在这种情况下是女孩)不上传任何头像,那么我想检查json并获得性别信息,有了这个性别信息,我想把url放在女性默认头像上。

这是我的控制器代码:

$scope.getUserImage = function (user) {
    if (user.avatar) {
        return user.avatar;
    } else {
        return '/images/icons/user-' + user.gender + '.svg';
    }
};
$scope.schueler = [
    {
        firstName: 'Sven',
        lastName: 'Wauback',
        gender: 'male',
        avatar: 'url to avatar',
        notice: 'Fast fertig mit Theorie'
    },
    {
        firstName: 'Sonja',
        lastName: 'Flockenbarsch',
        gender: 'female',
        avatar: 'url to avatar',
        notice: 'Brauch Praxis Extrastunden'
    },
    {
        firstName: 'Lisa',
        lastName: 'Weber',
        gender: 'female',
        avatar: '',
        notice: 'Hat kein bock auf Fotoabgabe'
    },
    {
        firstName: 'Manuel',
        lastName: 'Bürstenkrieger',
        gender: 'male',
        avatar: 'url to avatar',
        notice: 'Denkt er wär der coolste'
    }
];

在这里查看文件:

<md-list-item ng-repeat="item in schueler" class="md-2-line" ng-click="null">
    <img ng-src="getUserImage(user)" class="md-avatar" alt="{{item.firstName}} {{item.lastName}}"/>
    <div class="md-list-item-text" layout="column">
        <h3>{{item.firstName}} {{item.lastName}}</h3>
        <p>{{item.notice}}</p>
    </div>
    <md-divider></md-divider>
</md-list-item>

好的,顶部的函数是我的第一次尝试……但这不起作用。我不太懂javascript。我认为这个剪辑是完全错误的。有人能告诉我做这件事的正确方法是什么吗?

在我看来,您为图像源传递了错误的值。不应该是getUserImage(item)而不是getUserImage(user)

编辑:要获得值,它将是ng-src="{{getUserImage(item)}}"