From 7fa0e879a50ddde72484103bc34ab9a176621dac Mon Sep 17 00:00:00 2001 From: Aaron Altounian Date: Tue, 4 Jun 2019 20:37:24 -0500 Subject: [PATCH 1/4] started --- package-lock.json | 56 +++++++++++++----- src/App.js | 100 ++++++++++++++++++-------------- src/actions/index.js | 10 +++- src/components/Counter.js | 10 +++- src/components/CounterButton.js | 12 +++- src/index.js | 6 +- src/reducers/index.js | 16 ++++- 7 files changed, 145 insertions(+), 65 deletions(-) diff --git a/package-lock.json b/package-lock.json index ee9a1d2..d7bb883 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3187,12 +3187,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3207,17 +3209,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3334,7 +3339,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3346,6 +3352,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3360,6 +3367,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3367,12 +3375,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3391,6 +3401,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3471,7 +3482,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3483,6 +3495,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3604,6 +3617,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -7113,12 +7127,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -7133,17 +7149,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -7260,7 +7279,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -7272,6 +7292,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -7286,6 +7307,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -7293,12 +7315,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -7317,6 +7341,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -7397,7 +7422,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -7409,6 +7435,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -7530,6 +7557,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", diff --git a/src/App.js b/src/App.js index 392ed1f..8693277 100644 --- a/src/App.js +++ b/src/App.js @@ -16,50 +16,64 @@ import SortUsers from "./components/SortUsers"; import ScaleVideo from "./components/ScaleVideo"; import Modal from "./components/Modal"; import ShowModal from "./components/ShowModal"; +import store from './store'; -function App() { - return ( -
-
- -
- -
- -
- -
- -
- -
- -
- -
- -
- -
-
- -
- -
- -
- -
- -
- - -
-
- +class App extends React.Component { + + componentDidMount() { + fetch('https://jsonplaceholder.typicode.com/users') + .then(res => res.json()) + .then(users => { + let message = {value: users, type:'USERS_LOADED'}; + store.dispatch(message) + }) + } + + render() { + + return ( +
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
+ +
+ +
+ +
+ +
+ +
+ + +
+
+ +
+
- -
- ); + ) + }; } export default App; \ No newline at end of file diff --git a/src/actions/index.js b/src/actions/index.js index 78955f4..b84d9c1 100644 --- a/src/actions/index.js +++ b/src/actions/index.js @@ -1,6 +1,14 @@ +export const INCREASE_COUNTER = 'INCREASE_COUNTER'; + export function increaseCounter(){ return { - type:"INCREASE_COUNTER" + type:INCREASE_COUNTER + } +} + +export function decreaseCounter() { + return { + type:"DECREASE_COUNTER" } } diff --git a/src/components/Counter.js b/src/components/Counter.js index e858afd..f9422fc 100644 --- a/src/components/Counter.js +++ b/src/components/Counter.js @@ -1,4 +1,5 @@ import React from 'react'; +import {connect} from 'react-redux'; function Counter(props) { return ( @@ -7,4 +8,11 @@ function Counter(props) {
); } -export default Counter; \ No newline at end of file + +const mapStateToProps = (state) => { + return { + count: state.currentCount + } +} + +export default connect(mapStateToProps, null)(Counter); \ No newline at end of file diff --git a/src/components/CounterButton.js b/src/components/CounterButton.js index df3a778..53a014d 100644 --- a/src/components/CounterButton.js +++ b/src/components/CounterButton.js @@ -1,4 +1,6 @@ import React from 'react'; +import {connect} from 'react-redux'; +import {increaseCounter, decreaseCounter} from '../actions/index'; function CounterButton(props) { return ( @@ -12,7 +14,7 @@ function CounterButton(props) { }>Increase Counter By One