Im пытается создать если заявление в шаблоне для отображения определенного блока текста, когда длина массива < 1.Угловая 2-компонентная глобальная переменная не определена?
Это, как я пытаюсь сделать это:
<div *ngIf="socialNetworks.length > 1">
<div class="alert-box warning radius">You can still connect some accounts</div>
<button class="btn btn-primary" *ngFor="let network of socialNetworks" (click)="loginSocialNetwork(network)">
{{network.title}}
</button>
</div>
Но я всегда получаю сообщение о том, что он не может прочитать длину свойства неопределенного.
я определить переменную socialNetworks [] здесь в угловом 2 компонента:
export class MyAccountComponent implements OnInit {
socialNetworks: socialNetwork[];
campaigns: Campaign[];
showGreeting: boolean = true;
constructor(
private _dataservice: DataService) {
}
Затем в отдельном методе, я установить значение от ответа от зрения пирамиды здесь:
getSocialNetworks() {
var url: string;
url = "/account_api"
this._dataservice.getDataByUrl(url)
.subscribe(
res => this.socialNetworks = res,
err => this.logError(err)
)
}
Даже если я добавлю инструкцию console.log в конце здесь, чтобы увидеть значение this.socialNetworks, он говорит, что он не определен. Но в отладчике я вижу, что значение this.socialNetworks не определено.
Итак, мой вопрос: я просто неправильно ссылаюсь на глобальную переменную, или я не вижу/не понимаю что-то вместе?
Ну, что избавились от ошибки, но теперь он ничего не показывает, насколько содержание (Который он должен). Поэтому я предполагаю, что это пустой массив, который никогда не изменяется. –
Какова ваша _dataservice, возвращающаяся на успех? – JacobS
Он просто возвращает массив объектов словаря. Я должен добавить, что я получаю данные успешно, и в цикле for в моем html-коде он создает список, как я ожидаю. –