Ionic 4/Angular – Create, Generate and Add Pages
In this post we will give you information about Ionic 4/Angular – Create, Generate and Add Pages. Hear we will give you detail about Ionic 4/Angular – Create, Generate and Add PagesAnd how to use it also give you demo for it if it is necessary.
In the previous tutorial we’ve seen how to create an Ionic 4 project. Now we’ll continue with the previous project by adding pages which are the basic buildings of an Ionic app. So let’s get started.
You can create pages either manually or generating them using the Ionic CLI v4 which is the recommended method.
In this guide we’ll look first at how to create a page manually or generate it with the Ionic CLI, then how to add it to the project.
Go ahead and open your terminal or command prompt and follow the instructions:
Generating Pages Using Ionic CLI 4
You can generate a new page by running the following command:
$ ionic g page <pageName>
For example to generate a contact page, run:
$ ionic g page contact
This command will create a folder with name my-page and three files:
. ├── contact.html ├── contact.scss └── contact.ts
contact.html
: contains UI components for the page.contact.scss
: contains sass styles to style your page.contact.ts
: contains TypeScript code.
In case of Ionic 3, pages are generated with lazy loading by default which means a page has its own module.
. ├── contact.html ├── contact.module.ts ├── contact.scss └── contact.ts
Creating Pages Manually
Head over to your project src/pages
folder then create a folder with your page name. Then create three files: contact.html
, contact.scss
and contact.ts
.
Open contact.ts
and add the following code
import{Component}from'@angular/core';import{NavController,NavParams}from'ionic-angular';@Component({selector:'contact',templateUrl:'contact.html',})exportclassContactPage{constructor(publicnavCtrl:NavController,publicnavParams:NavParams){}}
We first import Component decorator from the @angular/core
package then import NavController
, NavParams
from the ionic-angular
package which are used for adding navigation between pages inside an Ionic app.
Then we create a TypeScript class with a constructor then decorated this page with @Component
decorator.
In the decorator parameter templateUrl
we specify the name of the HTML file associated with the page.
On the class constructor we inject both NavController
and NavParams
which provides us with two instances this.navCtrl
and this.navParams
that can be used for implementing navigation between pages.
The @Component
decorator is an Angular class that converts a normal class to a component.
An Ionic page is just an Angular component.
We can actually create the page without injecting NavController
and NavParams
but since these two classes are used frequently then you may need to inject them.
Adding a Page to A Module (Ionic 3+ Only)
If you want to lazy load the page you need also to add a page module file. So go ahead create the contact.module.ts
file then copy and paste this code:
import{NgModule}from'@angular/core';import{IonicPageModule}from'ionic-angular';import{ContactPage}from'./contact';@NgModule({declarations:[ContactPage,],imports:[IonicPageModule.forChild(ContactPage),],exports:[ContactPage]})exportclassContactPageModule{}
Adding Pages to The Project Main Module
If the page supports lazy loading then it already has its own module so there is no need to add it to the project main module .If it’s not then head over to the src/app/app.module.ts
file then import and add the page to the lists: entryComponents
and declarations
:
/* ... */import{ContactPage}from'../pages/contact/contact';@NgModule({declarations:[MyApp,ContactPage],imports:[BrowserModule,IonicModule.forRoot(MyApp)],bootstrap:[IonicApp],entryComponents:[MyApp,ContactPage],providers:[StatusBar,SplashScreen,{provide:ErrorHandler,useClass:IonicErrorHandler}]})exportclassAppModule{}
Conclusion
So we have seen different methods to create pages in Ionic 4/Angular. We also covered how to add a page to main module app or page module if lazy loading is supported (Ionic 4/Angular).
Hope this code and post will helped you for implement Ionic 4/Angular – Create, Generate and Add Pages. if you need any help or any feedback give it in comment section or you have good idea about this post you can give it comment section. Your comment will help us for help you more and improve us. we will give you this type of more interesting post in featured also so, For more interesting post and code Keep reading our blogs