ras

redux-api-simple-middleware

This is a simple and useful api middleware for redux without too many configs.

Showing:

Popularity

Downloads/wk

0

GitHub Stars

2

Maintenance

Last Commit

5yrs ago

Contributors

0

Package

Dependencies

2

License

MIT

Type Definitions

Tree-Shakeable

No?

Categories

Readme

redux-api-simple-middleware

NPM version Downloads Build Status

A simple and useful solution to control the network activities of your Redux app;

It is based on Redux,so I didn't write that in package.json

Simple use with this middleware

  • There is a good example built with react native and redux, bilibili-react-native,it's in the recommendPage.js

  • run npm install redux-api-simple-middleware --save in your project first

  • import it in your configStore.js file(the file that you create a store and add other middleware) with: import apiMiddleware from 'redux-api-simple-middleware',then append the middleware to the applyMiddleware function like:

export default function configureStore(initialState) {
  return createStore(
    rootReducer,
    initialState,
    compose(
      applyMiddleware(
        thunkMiddleware,
        apiMiddleware
      )
    )
  )
}
  • after you have configured the store,you may add the SimpleAPIReducer to your rootReducer like:
import {combineReducers} from 'redux'
import {SimpleAPIReducer} from 'redux-api-simple-middleware'

...

const rootReducer = combineReducers ({
  //maybe some other reducers
  SimpleAPIReducer,
})

export default rootReducer
  • if you got all the above steps done,congrantulations,you can start to use it in your project

  • here is a example(I assume that you can work with Redux easily ^_^):

import {fetchBackSymbol} from 'redux-api-simple-middleware'

const log = fetchBackSymbol('http://app.bilibili.com/x/banner?plat=4')
 //you have to keep the returned value,it's a unique object that can help you get the relevent response

...

//where you need to render with the fetchState,you can find a state named 'SMAfetchState'

const {SAMfetchState, symbol, data} = this.props

if(SAMfetchState == 1){
  return 
}else if(SAMfetchState == 2){
  if(symbol == log){
    renderData = Object.assign({}, data)
  }
  return renderData
}

...
//I dont want to make it more difficult,but in fact,you must add the states in the page(Redux)

const mapStateToProps = (state) => ({
  SAMfetchState:state.SimpleAPIReducer.SAMfetchState,
  data:state.SimpleAPIReducer.data,
  symbol:state.SimpleAPIReducer.symbol
})

export default connect(mapStateToProps, {
  fetchBackSymbol
})(YOUR_COMPONENT_NAME)
  • here goes the package.json

{
  "name": "redux-api-simple-middleware",
  "version": "1.0.1",
  "description": "This is a simple and useful middleware for redux without much learn",
  "main": "index.js",
  "scripts": {
    "test": "make test"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/879479119/redux-api-simple-middleware"
  },
  "keywords": [
    "redux",
    "easy",
    "api-middleware"
  ],
  "author": "RockSAMA",
  "license": "MIT",
  "bugs": {
    "url": "https://github.com/879479119/redux-api-simple-middleware/issues"
  },
  "dependencies": {
    "es6-symbol": "^3.1.0",
    "redux-thunk": "^2.1.0"
  }
}

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial