Skip to content

Commit 1d5e383

Browse files
setting up redux
1 parent 210d3d2 commit 1d5e383

File tree

7 files changed

+88
-4
lines changed

7 files changed

+88
-4
lines changed

package-lock.json

Lines changed: 39 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,11 @@
77
"node-sass": "^4.14.1",
88
"react": "^16.8.6",
99
"react-dom": "^16.8.6",
10+
"react-redux": "^7.2.0",
1011
"react-router-dom": "^5.2.0",
11-
"react-scripts": "2.1.8"
12+
"react-scripts": "2.1.8",
13+
"redux": "^4.0.5",
14+
"redux-logger": "^3.0.6"
1215
},
1316
"scripts": {
1417
"start": "react-scripts start",

src/index.js

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,16 @@ import ReactDOM from 'react-dom';
33
import './index.css';
44
import App from './App';
55
import { BrowserRouter } from 'react-router-dom'
6+
import { Provider } from 'react-redux'
7+
import store from './redux/store'
8+
9+
10+
611
ReactDOM.render(
7-
<BrowserRouter>
8-
<App />
9-
</BrowserRouter>,
12+
<Provider store={store}>
13+
<BrowserRouter>
14+
<App />
15+
</BrowserRouter>
16+
</Provider>,
1017
document.getElementById('root'));
1118

src/redux/root-reducer.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { combineReducers } from 'redux'
2+
import userReducer from './user/user.reducer'
3+
4+
5+
export default combineReducers({
6+
user: userReducer
7+
})

src/redux/store.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import { createStore, applyMiddleware } from 'redux'
2+
import logger from 'redux-logger'
3+
4+
import rootReducer from './root-reducer'
5+
6+
const middlewares = [logger]
7+
8+
const store = createStore(rootReducer, applyMiddleware(...middlewares))
9+
10+
11+
export default store

src/redux/user/user.actions.js

Whitespace-only changes.

src/redux/user/user.reducer.jsx

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
const INITIAL_STATE = {
2+
currentUser: null
3+
}
4+
const userReducer = (state = INITIAL_STATE, action) => {
5+
switch(action.type){
6+
case "SET_CURRENT_USER":
7+
return {
8+
...state,
9+
currentUser: action.payload
10+
}
11+
12+
default:
13+
return state
14+
}
15+
}
16+
17+
export default userReducer

0 commit comments

Comments
 (0)