Comments (3)
@eranimo How do you mean?
The two libraries are pretty orthogonal and work well together. Here's an example with [email protected]
:
Action thunks:
// actions.js
import { createAction } from 'redux-actions'
import AuthService from './service'
export const receiveAuthProfile = createAction('RECEIVE_AUTH_PROFILE')
export function logInThunk() {
return dispatch =>
AuthService.logIn()
.then(profile => dispatch(receiveAuthProfile(profile)))
.catch(error => {
const errorToDispatch = error instanceof Error
? error
: new Error(error)
return dispatch(receiveAuthProfile(errorToDispatch))
})
}
export function logOutThunk() {
return dispatch => AuthService.logOut()
.then(() => dispatch(receiveAuthProfile(null)))
}
Reducer:
// reducer.js
import { handleAction } from 'redux-actions'
import { receiveAuthProfile } from './actions'
import AuthService from './service'
export default handleAction(receiveAuthProfile,
{
next(state, action) {
return { ...state, loggedInUser: action.payload }
},
throw() {
return { loggedInUser: null }
},
},
{ loggedInUser: AuthService.authenticated ? AuthService.profile : null },
)
from redux-actions.
I'd suggest to use redux-thunk
for this. You can use getState()
in the action creator and dispatch()
then ADD_TO_BASKET
or INCREASE_QUANTITY
according the result of if the item is already in the basket or not.
from redux-actions.
Does redux-actions support using redux-thunk?
from redux-actions.
Related Issues (20)
- it's support immutable.js?
- can't use Map on handleActions HOT 2
- combine-actions prefixing bug
- Error handling on action payload HOT 2
- Docs: broken link
- Suddenly can't add an action... HOT 3
- How to use react hooks aftrer reducer change for the lib?
- Does state changing is async? HOT 3
- Looking for Maintainers
- React SSR handleActions cache bug HOT 1
- handleActions with Immer. HOT 1
- Wierd behavior with just not recognizing string templated reducer HOT 1
- 'to-camel-case' pacakge introducing bug since it's not compatible with 'lodash.camelCase' HOT 1
- v3.0.0 + TypeScript Cannot find module 'redux-actions' from ... HOT 12
- Import fails to identify entry point HOT 2
- can redux-actions be used with redux-thunk?
- Not Working with React Native from v.3.0.0
- Compilation error in `react-native:0.71.8` HOT 1
- Not working with `Jest` from v3.0.0 HOT 1
- Not working with Jest from v3.0.0 part 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from redux-actions.