add redux

This commit is contained in:
tparnell
2019-10-25 11:24:21 -04:00
parent a90cf2c8a3
commit dca234c215
6 changed files with 83 additions and 5 deletions

View File

@@ -6,7 +6,10 @@
"node-sass": "^4.13.0",
"react": "^16.11.0",
"react-dom": "^16.11.0",
"react-scripts": "3.2.0"
"react-redux": "^7.1.1",
"react-scripts": "3.2.0",
"redux": "^4.0.4",
"redux-thunk": "^2.3.0"
},
"scripts": {
"start": "react-scripts start",

View File

@@ -1,10 +1,12 @@
import React from 'react';
import React from "react";
import { Provider } from "react-redux";
import setupStore from "./store/setupStore.js";
function App() {
return (
<div >
Yoooooo
</div>
<Provider store={setupStore()}>
<div>Yoooooo</div>
</Provider>
);
}

View File

@@ -0,0 +1,6 @@
export default function appReducer(state = {}, action) {
switch (action.type) {
default:
return state;
}
}

5
src/reducers/main.js Normal file
View File

@@ -0,0 +1,5 @@
import { combineReducers } from 'redux';
import appReducer from './appReducer.js';
export default combineReducers({
appReducer
});

13
src/store/setupStore.js Normal file
View File

@@ -0,0 +1,13 @@
import { createStore, applyMiddleware, compose } from "redux";
import thunk from "redux-thunk";
import rootReducer from "../reducers/main.js";
export default function setupStore() {
return createStore(
rootReducer,
compose(
applyMiddleware(thunk),
window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
)
);
}

View File

@@ -853,6 +853,13 @@
dependencies:
regenerator-runtime "^0.13.2"
"@babel/runtime@^7.5.5":
version "7.6.3"
resolved "https://artifactory-eng.cargurus.com/artifactory/api/npm/npm-registry/@babel/runtime/-/runtime-7.6.3.tgz#935122c74c73d2240cafd32ddb5fc2a6cd35cf1f"
integrity sha1-k1Eix0xz0iQMr9Mt21/Cps01zx8=
dependencies:
regenerator-runtime "^0.13.2"
"@babel/template@^7.1.0", "@babel/template@^7.4.0", "@babel/template@^7.4.4", "@babel/template@^7.6.0":
version "7.6.0"
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.6.0.tgz#7f0159c7f5012230dad64cca42ec9bdb5c9536e6"
@@ -4598,6 +4605,13 @@ hmac-drbg@^1.0.0:
minimalistic-assert "^1.0.0"
minimalistic-crypto-utils "^1.0.1"
hoist-non-react-statics@^3.3.0:
version "3.3.0"
resolved "https://artifactory-eng.cargurus.com/artifactory/api/npm/npm-registry/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b"
integrity sha1-sJF48BIhhPuVrPUl2q7LTY9FlYs=
dependencies:
react-is "^16.7.0"
hosted-git-info@^2.1.4:
version "2.8.4"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.4.tgz#44119abaf4bc64692a16ace34700fed9c03e2546"
@@ -8277,11 +8291,28 @@ react-error-overlay@^6.0.3:
resolved "https://registry.yarnpkg.com/react-error-overlay/-/react-error-overlay-6.0.3.tgz#c378c4b0a21e88b2e159a3e62b2f531fd63bf60d"
integrity sha512-bOUvMWFQVk5oz8Ded9Xb7WVdEi3QGLC8tH7HmYP0Fdp4Bn3qw0tRFmr5TW6mvahzvmrK4a6bqWGfCevBflP+Xw==
react-is@^16.7.0, react-is@^16.9.0:
version "16.11.0"
resolved "https://artifactory-eng.cargurus.com/artifactory/api/npm/npm-registry/react-is/-/react-is-16.11.0.tgz#b85dfecd48ad1ce469ff558a882ca8e8313928fa"
integrity sha1-uF3+zUitHORp/1WKiCyo6DE5KPo=
react-is@^16.8.1, react-is@^16.8.4:
version "16.10.1"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.10.1.tgz#0612786bf19df406502d935494f0450b40b8294f"
integrity sha512-BXUMf9sIOPXXZWqr7+c5SeOKJykyVr2u0UDzEf4LNGc6taGkQe1A9DFD07umCIXz45RLr9oAAwZbAJ0Pkknfaw==
react-redux@^7.1.1:
version "7.1.1"
resolved "https://artifactory-eng.cargurus.com/artifactory/api/npm/npm-registry/react-redux/-/react-redux-7.1.1.tgz#ce6eee1b734a7a76e0788b3309bf78ff6b34fa0a"
integrity sha1-zm7uG3NKenbgeIszCb94/2s0+go=
dependencies:
"@babel/runtime" "^7.5.5"
hoist-non-react-statics "^3.3.0"
invariant "^2.2.4"
loose-envify "^1.4.0"
prop-types "^15.7.2"
react-is "^16.9.0"
react-scripts@3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/react-scripts/-/react-scripts-3.2.0.tgz#58ccd6b4ffa27f1b4d2986cbdcaa916660e9e33c"
@@ -8456,6 +8487,19 @@ redent@^1.0.0:
indent-string "^2.1.0"
strip-indent "^1.0.1"
redux-thunk@^2.3.0:
version "2.3.0"
resolved "https://artifactory-eng.cargurus.com/artifactory/api/npm/npm-registry/redux-thunk/-/redux-thunk-2.3.0.tgz#51c2c19a185ed5187aaa9a2d08b666d0d6467622"
integrity sha1-UcLBmhhe1Rh6qpotCLZm0NZGdiI=
redux@^4.0.4:
version "4.0.4"
resolved "https://artifactory-eng.cargurus.com/artifactory/api/npm/npm-registry/redux/-/redux-4.0.4.tgz#4ee1aeb164b63d6a1bcc57ae4aa0b6e6fa7a3796"
integrity sha1-TuGusWS2PWobzFeuSqC25vp6N5Y=
dependencies:
loose-envify "^1.4.0"
symbol-observable "^1.2.0"
regenerate-unicode-properties@^8.1.0:
version "8.1.0"
resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz#ef51e0f0ea4ad424b77bf7cb41f3e015c70a3f0e"
@@ -9537,6 +9581,11 @@ svgo@^1.0.0, svgo@^1.2.2:
unquote "~1.1.1"
util.promisify "~1.0.0"
symbol-observable@^1.2.0:
version "1.2.0"
resolved "https://artifactory-eng.cargurus.com/artifactory/api/npm/npm-registry/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804"
integrity sha1-wiaIrtTqs83C3+rLtWFmBWCgCAQ=
symbol-tree@^3.2.2:
version "3.2.4"
resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"