2.0.2 • Published 2 years ago

ngx-keyboard-events v2.0.2

Weekly downloads
4
License
-
Repository
-
Last release
2 years ago

npm version

NgxKeyboardEvents

This is a simple Angular module to bring an easy way to listen to keyboard events in a modularized way consistent with Angular's style.

Right now, ngx-keyboard-events assumes that you're using Angular in a browser environment. Angular has changed a lot since I started using it, so I'm pretty sure this is a terrible assumption. If you're using it elsewhere and want to offer some recommendations on how to make this library more friendly to other environments, open an issue!

Getting started

Install the package

npm i ngx-keyboard-events

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
import { NgxKeyboardEventsModule } from 'ngx-keyboard-events';

@NgModule({
    declarations: [
        AppComponent
    ],
    imports: [
        BrowserModule,
        NgxKeyboardEventsModule, // import the module
    ],
    bootstrap: [AppComponent]
})
export class AppModule { }

some.component.ts

import { Component, OnInit } from '@angular/core';
import { NgxKeyboardEventsService, NgxKeyboardEvent } from 'ngx-keyboard-events';

@Component({
    selector: 'ngx-root',
    templateUrl: './app.component.html',
    styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
    title = 'ngx';

    constructor(private keyboardEventsService: NgxKeyboardEventsService) { }

    ngOnInit() {
        this.keyboardEventsService.onKeyPressed.subscribe((keyEvent: NgxKeyboardEvent) => {
            console.log('key event', keyEvent);
        });
    }
}

Know issues

The current implementation of the service makes prodigious use of keyEvent.keyCode by mapping numerical values from this property to a Typescript enum for a better developer experience. keyCode is deprecated in favor of key, a string property. I need to rejigger my solution so that 1) it takes advantage of the complete set of possible values for key, and 2) it no longer relies on keyCode. This issue is being tracked here.

2.0.2

2 years ago

1.0.1

2 years ago

0.3.2

2 years ago

0.3.1

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

0.3.0

2 years ago

0.2.1

2 years ago

0.2.0

2 years ago

0.1.10

5 years ago

0.1.9

6 years ago

0.1.8

6 years ago

0.1.7

6 years ago

0.1.6

6 years ago

0.1.5

6 years ago

0.1.4

6 years ago

0.1.3

6 years ago

0.1.2

6 years ago

0.0.1

6 years ago