时间:2021-05-28
一 准备工作
首先,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.tsimport {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> <!--?是Angular特定语法,相当于判断数据是否存在,有则显示无则不显示--> {{item?.name}} </ion-item> </ion-list></ion-content>效果图
2 本地json文件请求
service中已经写了getRequestContact()方法对本地json文件读取。
//contact.tsimport {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?.name}}</span> <span>年龄:{{item?.age}}</span> <span>信息:{{item?.message}}</span> </div> </ion-item> </ion-list></ion-content>效果图
三 总结
1.所有创建的page要在app.module.ts中引用;
2.service要在app.module.ts中引用;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
最近在学习Vue,今天尝试了使用axios模拟本地网络请求。使用的过程中发现接口请求一直404,后来发现在当期的Vue-cli构建的最新的项目中,接口请求应该这
本文实例讲述了Android读取本地json文件的方法。分享给大家供大家参考,具体如下:1、读取本地JSON,但是显示汉字乱码publicstaticStrin
本篇angular2/ionic2实现搜索结果中的搜索关键字高亮的示例,分享给大家,具体如下:添加一个pipe:import{Pipe,Injectable,P
假设所有的数据库读取,httpapi接口请求都为一个中间件,将中间件当做插件,插入需要获取数据的位置。api.jsmodule.exports=async(ct
接口文档模块名:用户注册接口请求URL:http://api.nnzhp.cn/api/user/user_reg请求方式:POST参数:参数名必选类型说明us