IONIC--创建并使用组件

本文介绍了如何在IONIC中创建和使用组件,包括通过命令行创建组件后在src/components目录下的表现,以及组件在app.module.ts中的注册步骤。同时,文章还讲解了如何创建页面并实现页面间的跳转,详细描述了页面创建后在src目录下的结构变化。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创建及使用组件

1、使用命令行创建组件,创建完成后会在src目录下多一个components的目录,目录中有用命令创建的所有组件

 cd myApp  //进入项目目录
 ionic g component loginModel //创建一个名为loginmodel的组件
2、该目录下有components.module.ts,所有创建的组件也会在这里声明,引入的所有模块在所有组件中都有效
import { NgModule } from '@angular/core';
import { LoginModelComponent } from './login-model/login-model';
//引入BrowserModule 解决ngFor报错问题
import { BrowserModule } from '@angular/platform-browser';
@ NgModule({
     declarations: [ LoginModelComponent],
     imports: [ BrowserModule],
     exports: [ LoginModelComponent]
})
export class ComponentsModule {}
3、使用组件时,要先在app.module.ts中声明注册模块后才能在pages里的所有页面使用

--myApp\src\app\app.module.ts --注册

/**根模块--告诉ionic如何组装应用 */
//引入component模块
import{ ComponentsModule} from '../components/components.module';
/ /......中间部分代码省略(修改这两处即可)
imports: [ //引入的模块(依赖的模块)
BrowserModule,
ComponentsModule,
IonicModule. forRoot( MyApp)
],
--myApp\src\pages\about\about.html --使用
< ion-header >
< ion-navbar >
< ion-title >
About 标题
</ ion-title >
</ ion-navbar >
</ ion-header >
< ion-content padding >
内容区域
< login-model ></ login-model >
</ ion-content >

再刷新app页面即可


创建页面及实现页面跳转

1、使用命令行创建页面,创建完成后会在src目录下多一个components的目录,目录中有用命令创建的所有组件

 cd myApp  //进入项目目录
 ionic g page news //创建一个名为news的页面
2、在home页面中做一个页面跳转,通过home页面的按钮跳转到news页面,首先要在app.module.ts中声明该页面
--myApp\src\app\app.module.ts --注册
//引入新闻页面
import { NewsPage } from '../pages/news/news';
/ /省略中间部分......
declarations: [ //声明组件
MyApp,
AboutPage,
ContactPage,
HomePage,
NewsPage, //声明
TabsPage
],
entryComponents: [ //配置不会在模板中使用的组件
MyApp,
AboutPage,
ContactPage,
HomePage,
NewsPage,
TabsPage
],
3、在home页面新增一个按钮,要在home页面使用就要在home页面中引入该模块,
--myApp\src\pages\home\home.html
< ion-header >
< ion-navbar >
< ion-title >Home </ ion-title >
</ ion-navbar >
</ ion-header >
< ion-content padding >
< login-model ></ login-model >
< h2 >Welcome to Ionic! </ h2 >
< p >
This starter project comes with simple tabs-based layout for apps
that are going to primarily use a Tabbed UI.
</ p >
< p >
Take a look at the < code >src/pages/ </ code > directory to add or change tabs,
update any existing page or create new pages.
</ p >
< button ion-button ( click)= "goNews()" >跳转至新闻 </ button >
</ ion-content >
--myApp\src\pages\home\home.ts
import { Component } from '@angular/core';
import { NavController } from 'ionic-angular';
import { NewsPage } from '../news/news';
@ Component({
selector: 'page-home',
templateUrl: 'home.html'
})
export class HomePage {
constructor( public navCtrl: NavController) {
}
goNews(){
//this.navCtrl.push(页面)
this. navCtrl. push( NewsPage);
}
}
4、启动后点击按钮就可以跳转至news.html了

备注:https://ionicframework.com/docs/components/#overview 可查看控件html代码
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值