0.1.9 • Published 3 years ago

easy-control-api v0.1.9

Weekly downloads
60
License
ISC
Repository
github
Last release
3 years ago

Easy Control Api With API service

npm version npm npm bundle size David (path)

Control all your API requests at one place

Feartures

  • Control API request in one place, maintain easily.
  • Using axios default, if you want, you can use a axios instance
  • Don't need try/catch on everytime call axios request, API Service handle it for you.
  • Typescript support

Use stage

import { IResponseBodyPost, IRequestBodyPost } from "./types";
import { APIService } from "easy-control-api";

export class Post extends APIService {
  static slug = '/posts';

  set slug (_url: string) {
    Post.slug = _url;
  }

  get slug() {
    return Post.slug;
  }

  public async getPosts() {
    const res = await this
      .setMethod('GET')
      .request(Post.slug);
    return res;
  }

  public async getPost(id: number) {
    const res = await this
      .setMethod('GET')
      .request<IResponseBodyPost>(`${Post.slug}/${id}`);
    return res;
  }

  public async createPost(post: IRequestBodyPost) {
    const res = await this
      .setHeaders({
        test: 'this is a header'
      })
      .setMethod('POST')
      .request<IResponseBodyPost, IRequestBodyPost>(Post.slug, post)
    return res;
  }
}

export const PostApi = new Post();

Method getPost/ createPost with return:

  • success is true and data reiceved if request success
  • success is false and error message if resquest failed, your can alter this error by react-alter or react-toast

Demo

You can see example at here Or you can playground with codesanbox

0.1.9

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago