NgxHal
August 11, 2022 ยท View on GitHub
ngx-hal is a data store with support for handling HAL formatted HTTP requests.
Installation
npm install --save ngx-hal
Basic usage
After the initial ngx-hal setup (see Getting started section) a resource model can be created which extends HalModel from the ngx-hal and a resource service which extends ModelService from ngx-hal.
The following example uses the User resource as an example.
user.model.ts
class User extends HalModel {
@Attribute()
public name: string;
}
user.service.ts
class UserService extends ModelService<User> {
constructor(datastore: DatastoreService) {
super(datastore, User);
}
}
A few methods are available on an instance of UserService:
Fetching a user
this.userService.findOne('1').subscribe((user: User) => {
console.log('Fetched user', user);
});
Fetching a list of users
this.userService.find().subscribe((users: Array<User>) => {
console.log('Fetched users', users);
});
Fetching a list of users with pagination information
this.userService.find({}, true).subscribe((halDocument: HalDocument<User>) => {
console.log('Fetched users', halDocument.models);
console.log('Pagination information', halDocument.pagination);
});
API reference
- see wiki
Build
ng build
Running unit tests
ng test