https://github.com/gutenye/react-resolve
Async rendering & data-fetching
https://github.com/gutenye/react-resolve
Last synced: about 2 months ago
JSON representation
Async rendering & data-fetching
- Host: GitHub
- URL: https://github.com/gutenye/react-resolve
- Owner: gutenye
- Created: 2016-07-15T02:55:23.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2016-09-15T05:50:18.000Z (over 8 years ago)
- Last Synced: 2025-04-12T07:44:06.014Z (about 2 months ago)
- Language: JavaScript
- Size: 515 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
react-resolve
=============Inspired by [relate](https://github.com/relax/relate) and [react-resolver](https://github.com/ericclemmons/react-resolver)
Features
- Support variables
- Automatically manage the data list when do update action, e.g. add## Usage
```
import {resolve} from "react-resolve"@resolve({
users: ({page}) => Promise.resolve([{id: 1, page}]),
}, {
page: 0,
}, {
add: (data) => Promise.resolve(data),
add: [ (data) => promise, "ADD" ],
add: [ (data) => promise, "ADD" "users" ],
})
class App extends Component {
render() {
this.props.users
this.props.add({id: 2, name: "b"})
this.props.resolve({page: 2})
}
}this.resolve({page: 2})
```Advanced Example
```
@resolve({
users: (props) => promise,
posts: () => promise,
}, {
deleteUser: [ (data) => promise, "REMOVE", "users" ] // ADD REMOVE UPDATE
deletPost: [ (data) => promise, "REMOVE", "posts" ]
})
class App extends Component { }
``````
// ACTIONS
//
// add create {data}
// remove destroy {id}
// update {data}
//
```## Install
```
$ npm install react-resolve
```## Ideas
```
```