angular2-api
angular2-api copied to clipboard
Api service for angular2 to work with REST resources
angular2-api
Api service for angular2 to work with REST resources
Getting Started
$ npm i --save angular2-api
Add this to your bootstrap file
import { ApiService, provideApiService } from 'angular2-api';
bootstrap(App, [
ApiService
])
// To provide custom global deserialize/serialize/serializeParams
bootstrap(App, [
{ provide: ApiConfig, useValue: new ApiConfig({
basePath: '/test',
deserialize(data) {
return data
},
serialize(data) {
return data
},
serializeParams(data) {
return data
}
})
}
ApiService
])
Using ApiService
The most common use case for api service would be to create resources
import {Injectable} from 'angular2/core'
import {ApiResource, ApiService} from 'angular2-api'
@Injectable()
export class MyResource implements ApiResource {
endpoint: string = 'my-endpoint'
idAttribute: string = 'testId' // If not provided will use 'id'
deserialize(data) {
return data
}
serialize(data) {
return data
}
serializeParams(params) {
return params
}
}
export class MyComponent {
constructor(apiService: ApiService, myResource: MyResource) {
apiService.find(myResource, 1, ...args)
}
}
Methods
For url
you can pass an array of strings or a string
-
ApiService.get(resource, url, [params])
-
ApiService.put(resource, url, data, [params])
-
ApiService.patch(resource, url, data, [params])
-
ApiService.post(resource, url, data, [params])
-
ApiService.delete(resource, url, [params])
-
ApiService.find(resource, id, [params])
-
ApiService.findAll(resource, [params])
-
ApiService.create(resource, data, [params])
-
ApiService.update(resource, [data, params])
-
ApiService.destroy(resource, [id, params])