Simple, easy and performance countdown for angular
npm install ngx-countdown --save
import CountdownModule
。
import { CountdownModule } from 'ngx-countdown';
@NgModule({
imports: [ BrowserModule, CountdownModule ],
declarations: [AppComponent],
bootstrap: [AppComponent]
})
export class AppModule { }
<countdown #cd [config]="config" (event)="handleEvent($event)" />
Method
Name | Description |
---|---|
begin() |
Start countdown, you must manually call when demand: false |
restart() |
Restart countdown |
stop() |
Stop countdown, must call restart when stopped, it's different from pause, unable to recover |
pause() |
Pause countdown, you can use resume to recover again |
resume() |
Resume countdown |
How call component methods
@ViewChild('cd', { static: false }) private countdown: CountdownComponent;
this.countdown.begin();
@Component({
template: `<countdown />`,
standalone: true,
imports: [CountdownComponent],
})
export class App
Name | Type | Default | Summary |
---|---|---|---|
config |
CountdownConfig |
- | Config |
event |
EventEmitter<CountdownEvent> |
- | Events |
Name | Type | Default | Summary |
---|---|---|---|
demand | boolean |
false |
Start the counter on demand, must call begin() to starting |
leftTime | number |
0 |
Calculate the remaining time based on the server, e.g: 10 ,5.5 , (Unit: seconds) |
stopTime | number |
- | Refers to counting down from local time to end time (Unit: Milliseconds second UNIX timestamp) |
format | string |
HH:mm:ss |
Formats a date value, pls refer to Accepted patterns |
prettyText | (text: string) => string |
- | Beautify text, generally used to convert formatted time text into HTML |
notify | number[], number |
- | Should be trigger type notify event on the x second. When values is 0 will be trigger every time |
formatDate | CountdownFormatFn |
- | Default based on the implementation of formatDate in @angular/common , You can changed to other libs, e.g: date-fns |
timezone | string |
+0000 |
A timezone offset (such as '+0430'), or a standard UTC/GMT. When not supplied, uses the end-user's local system timezone |
Name | Type | Summary |
---|---|---|
action |
start,stop,restart,pause,resume,notify,done |
Action of the event |
status |
CountdownStatus |
Status of the countdown |
left |
number |
Number of remaining milliseconds |
text |
string |
Format the text |
Global Config
bootstrapApplication(AppComponent, {
providers: [provideCountdown({ format: `mm:ss` })],
}).catch((err) => console.error(err));
Please follow this guidelines when reporting bugs and feature requests:
Thanks for understanding!
The MIT License (see the LICENSE file for the full text)