Я создаю приложение (его первое приложение), и там я даю пользователю возможность загрузить там аватар пользователя и настроить там полы. если (в этом случае девушка) не загружайте аватар, тогда я хочу проверить 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'
}
];
И здесь View File:
<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)}}"