Comments (1)
Another options is to just have a LOGIN_ACTION (or something) action (and get rid of all the rest), which just takes the params from the action and puts them in app state. Then just have the actions define the isAuthenticated value, etc. This would remove 3/4 of the case statements and only have one const needed for all login actions. I don't see any gains from all of the extra code and frankly, when I first looked at this as an example of redux it made me think I'd traveled back in time with how tedious it is to do very simple tasks and if it takes all of that just for login, my apps would be huge to extrapolate that pattern for everything they do.
Just do this for the reducer.
const { type, ...rest } = action;
switch (type) {
case LOGIN_ACTION:
return Object.assign({}, state, rest)
default:
return state
}
Then have functions like this where the params are actually read:
export function receiveLogin(user) {
return {
type: LOGIN_ACTION,
isAuthenticated:true,
isFetching: false,
user
}
}
export function logout() {
return {
type: LOGIN_ACTION,
isAuthenticated:false,
isFetching:false,
user:null
}
}
I don't see the use for the way it's done in this repo other than making more work for devs. I still feel like the React ecosystem has a long way to go with some of this to make it quick and terse to set up complex interactions let alone simple ones like this.
from redux-auth.
Related Issues (17)
- Error in App.js file. As 'login' and 'actions' are imported & It has not used.
- can u suggest how to use react-router with this
- Is it safe to save token in localStorage ? HOT 3
- Why we use separate fetch instead of using our api middleware? HOT 1
- Why the Bracket around CALL_API?
- Uncaught Error: Actions must be plain objects. Use custom middleware for async actions. HOT 2
- How to access the JWT token HOT 1
- Post-login behaviour (for items requiring token)
- Show use of Auth0-lock HOT 11
- Auth0-lock branch should be updated HOT 2
- Why using API call in action? Isn't it supposed be in middleware/api? HOT 1
- Action creators are just pure functions
- Doesn't seem like the REQUEST action is ever sent in api.js HOT 3
- Make example for react-native HOT 3
- Too much info on actions.js HOT 2
- Logout reducers HOT 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-auth.