angular.js - angular2 最基礎的問題
問題描述
import { Component ,OnInit} from ’@angular/core’;import { NavController, NavParams } from ’ionic-angular’;import { Category } from ’../../service/category’;import { CategoryService } from ’../../service/category.service’;@Component({ selector: ’index-page’, templateUrl: ’index.html’})export class IndexPage implements OnInit{ categories: Category[]; constructor( public navCtrl: NavController, public navParams: NavParams, private categoryService: CategoryService ) { } ngOnInit(): void { this.getCategories(); } getCategories(): void { this.categoryService.getCategories().then(categories => this.categories = categories); console.log(this.categories); } itemTapped(event, item) { console.log(window.localStorage.getItem(’token’)) // this.navCtrl.push(ListPage, { // id: item.title // }); // this.navCtrl.setRoot(ListPage); // console.log(localStorage.token); }}
index.html
<ion-header> <ion-navbar> <ion-title>車型選擇</ion-title> <button ion-button menuToggle end> <ion-icon name='menu'></ion-icon> </button> </ion-navbar></ion-header><ion-content> <ion-list> <button ion-item *ngFor='let category of categories' (click)='itemTapped($event, category)'> {{category.name}} <p item-right> </p> </button> </ion-list> <button (click)='getCategories()' ion-button color='primary'>11</button></ion-content>
為什么模版里沒有顯示出數據,log出來的是undefinded,接口是有獲得數據的
問題解答
回答1:很明顯你的categories在log的時候還沒有獲取到數據,你使用的是異步獲取數據,在還沒有獲取到數據的時候已經執行下面的console.log()了。把log放在then里再看看。
相關文章:
1. python - 獲取到的數據生成新的mysql表2. javascript - js 對中文進行MD5加密和python結果不一樣。3. mysql里的大表用mycat做水平拆分,是不是要先手動分好,再配置mycat4. window下mysql中文亂碼怎么解決??5. sass - gem install compass 使用淘寶 Ruby 安裝失敗,出現 4046. python - (初學者)代碼運行不起來,求指導,謝謝!7. 為啥不用HBuilder?8. python - flask sqlalchemy signals 無法觸發9. python的文件讀寫問題?10. 為什么python中實例檢查推薦使用isinstance而不是type?
