ionic4-rating
Version:
A native Ionic 4 rating stars component.
110 lines (87 loc) • 2.47 kB
Markdown
4 rating stars component forked from [ionic-rating](https://www.npmjs.com/package/ionic-rating) to support new Ionic 4 components.
`npm i ionic4-rating`
Import `IonicRatingModule` on module definition that declares the page where you want to add the rating component. In some cases, all pages are declared on `src/app/app.module.ts`.
```typescript
import { NgModule } from '@angular/core';
import { IonicApp, IonicModule } from 'ionic-angular';
import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';
// Import ionic-rating module
import { IonicRatingModule } from 'ionic-rating';
@NgModule({
declarations: [
MyApp,
HomePage
],
imports: [
IonicRatingModule // Put ionic-rating module here
IonicModule.forRoot(MyApp),
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
HomePage
],
providers: []
})
export class AppModule {}
```
If you are using `Lazy Loading` in your application, add the `IonicRatingModule` to the page module instead of the app module.
```typescript
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import { ProfilePage } from './profile';
import { IonicRatingModule } from "ionic-rating";
@NgModule({
declarations: [
ProfilePage,
],
imports: [
IonicRatingModule // Put ionic-rating module here
IonicPageModule.forChild(ProfilePage),
],
exports: [
ProfilePage
]
})
export class ProfilePageModule { }
```
Include the component on page template, like the example below:
```
<rating [rate]="rate"
readonly="false" <!--default value-->
size="default" <!--default value-->
(rateChange)="onRateChange($event)">
</rating>
```
[(ngModel)]:
```
<rating [(ngModel)]="rate"
readonly="false" <!--default value-->
size="default" <!--default value-->
(ngModelChange)="onModelChange($event)">
</rating>
````
Reactive Forms:
```
<rating formControlName="rate"
readonly="false" <!--default value-->
size="default" <!--default value-->
</rating>
````
```
rating {
ion-icon {
color: gray;
&.filled {
color:
}
}
}
```
&
Updated by Lincon Dias 2019 to Ionic 4
A native Ionic