一 准备工作
首先,ionic3+Angular4的开发环境你得有,这里就不赘述。环境准备好,创建一个空白项目,模板自选。
二 实现过程
1 新建json文件和service
service记得在app.module.ts中引用
json和service
2 json文件格式
格式类似这样,根据实际需求决定。
[ { "id":"1", "name":"xiehan", "age":"24", "message":"测试json文件读取" }, { "id":"2", "name":"xiehan", "age":"24", "message":"测试json文件读取" }, { "id":"3", "name":"xiehan", "age":"24", "message":"测试json文件读取" }, { "id":"4", "name":"xiehan", "age":"24", "message":"测试json文件读取" } ]
3 service
import {Injectable} from '@angular/core'; import {Observable} from 'rxjs/Observable'; import {Http, Response} from '@angular/http'; import "rxjs/add/operator/map"; @Injectable() export class DemoService { constructor(private httpService: Http){ } // 网络接口请求 getHomeInfo(): Observable<Response> { return this.httpService.request('http://jsonplaceholder.typicode.com/users') } // 本地json文件请求 getRequestContact(){ return this.httpService.get("assets/json/message.json") } }
4 数据显示
1 网络接口请求
//home.ts import {ChangeDetectorRef, Component} from '@angular/core'; import { NavController } from 'ionic-angular'; import {DemoService} from "../../services/demo.service"; @Component({ selector: 'page-home', templateUrl: 'home.html' }) export class HomePage { // 接收数据用 listData: Object; // 依赖注入 constructor(public navCtrl: NavController, private ref: ChangeDetectorRef, private demoService: DemoService,) { } ionViewDidLoad() { // 网络请求 this.getHomeInfo(); } getHomeInfo(){ this.demoService.getHomeInfo() .subscribe(res => { this.listData = res.json(); // 数据格式请看log console.log("listData------->",this.listData); this.ref.detectChanges(); }, error => { console.log(error); }); } } //home.html <ion-header> <ion-navbar> <ion-title>首页</ion-title> </ion-navbar> </ion-header> <ion-content padding> <ion-list *ngFor="let item of listData"> <ion-item> <!--"text-align: center">
2 本地json文件请求
service中已经写了getRequestContact()方法对本地json文件读取。
//contact.ts import {ChangeDetectorRef, Component} from '@angular/core'; import { NavController } from 'ionic-angular'; import {DemoService} from "../../services/demo.service"; @Component({ selector: 'page-contact', templateUrl: 'contact.html' }) export class ContactPage { contactInfo=[]; constructor(public navCtrl: NavController, private demoService: DemoService, private ref: ChangeDetectorRef,) { } ionViewDidLoad() { // 网络请求 this.getRequestContact(); } getRequestContact(){ this.demoService.getRequestContact() .subscribe(res => { this.contactInfo = res.json(); console.log("contactInfo------->",this.contactInfo); this.ref.detectChanges(); }, error => { console.log(error); }); } } // contact.html <ion-header> <ion-navbar> <ion-title> 联系人 </ion-title> </ion-navbar> </ion-header> <ion-content> <ion-list> <ion-item *ngFor="let item of contactInfo"> <div style="display: flex;flex-direction: column;"> <span>姓名:{{item"text-align: center">
三 总结
1.所有创建的page要在app.module.ts中引用;
2.service要在app.module.ts中引用;以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“ionic3+Angular4实现接口请求及本地json文件读取示例”评论...
更新动态
2024年11月13日
2024年11月13日
- 刘欢《雨中的树(新歌加精选)2CD》德国HD24K金碟[WAV+CUE]
- 郑源 《世间情歌》6N纯银SQCD[WAV+CUE][1G]
- 群星《粤潮2HQII》头版限量编号[低速原抓WAV+CUE][991M]
- 群星《2023好听新歌21》十倍音质 U盘音乐[WAV分轨][1G]
- 《热血传奇》双11感恩回馈 超值狂欢30天
- 原神5.2版本活动汇总 5.2版本活动有哪些
- 张敬轩.2010-NO.ELEVEN【环球】【WAV+CUE】
- 黄丽玲.2006-失恋无罪【艾回】【WAV+CUE】
- 阿达娃.2024-Laluna【W8VES】【FLAC分轨】
- 宝可梦大集结段位等级划分表大全 大集结段位一览
- 龙腾世纪影障守护者工坊与装备如何升级 工坊与装备升级说明
- 龙腾世纪影障守护者全成就攻略分享 龙腾世纪4全成就列表一览
- 《剑星》更新四套全新战衣!
- 卡普空老将伊津野英昭宣布入职腾讯光子 开发3A动作
- 38岁梅根·福克斯官宣怀孕:将迎来第四个孩子