1.5.1 • Published 2 years ago

react-json-api-client v1.5.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

react-json-api-client

npm version npm NPM

Simple package to execute api requests, Right now the package is in beta phase

Installation

yarn add react-json-api-client
# or
npm i -s react-json-api-client

Usage

App.jsx

<ApiClient
    config={{
        endpoints: {
            auth: '/api/v1/my-auth-endpoint',
            nested: {
                foo: '/api/v1/bar'
                withReplace: '/api/v1/user/:id:'
            },
            
        },
        server: 'http://my-server.test'
    }}
>
    {... my app components}

</ApiClient>

MyComponent.jsx

import { useGet, usePost } from 'react-json-api-client'

const MyComponent: React.FC = () => {
    // First position = Promise to execute the request
    // Second position = Boolean with the loading state
    const [sendPost, sending] = usePost('nested.foo')
    // The usePatch, usePut, useDelete works the same way

    // const [sendPost, loading] = usePatch('auth')
    // data: The response data when the request is done
    // loading, boolean with the loading state
    const {data, loading} = useGet('nested.withReplace', {
        id: 2
    })
    
    // useGet can be lazy, just send the lazy flag after the configs
    const [sendRequest, loading] = useGet('path', {}, true)

    const handleAuth = async () => {
        try {
            const response = await sendPost({
                // The body
                data: {
                    email: 'my-email@gmail.com',
                    password: '1234567'
                }   
            })
            console.log(response.data)
        } catch (e) {
            // handle your error
        }
    }
    return (
        <>
        </>
    )
}

Todo V1.0.0

  • Api client context
  • Api hooks: useGet, usePost, usePatch, useDelete, usePut
  • Replace params in url
  • Api configuration hook
  • Allow render Requests log
  • Allow authentication (JWT)

Todo V1.2.0

  • Support for filters in url following the JSON Spect
  • Support for related records in url following the JSON Spect

Todo Version 2.0.0

  • Add JSON API schemas
1.5.1

2 years ago

1.5.0

2 years ago

1.4.1

2 years ago

1.4.0

3 years ago

1.2.0

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.3.1

3 years ago

1.3.0

3 years ago

1.0.11

3 years ago

1.0.10

3 years ago

1.0.14

3 years ago

1.0.13

3 years ago

1.0.12

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.2-beta.3

3 years ago

1.1.0

3 years ago

1.0.0

3 years ago

1.0.0-beta.1

3 years ago

1.0.0-beta.0

3 years ago