mirror of
https://github.com/microsoft/frontend-bootcamp.git
synced 2026-01-26 14:56:42 +08:00
adding back docs
This commit is contained in:
@@ -2,5 +2,5 @@
|
||||
<html>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="text/javascript" src="../../step2-08/demo/step2-08/demo.js"></script></body>
|
||||
<script src="../../step2-08/demo/step2-08/demo.js"></script></body>
|
||||
</html>
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
<html>
|
||||
<body>
|
||||
<div id="app"></div>
|
||||
<script type="text/javascript" src="../../step2-08/exercise/step2-08/exercise.js"></script></body>
|
||||
<script src="../../step2-08/exercise/step2-08/exercise.js"></script></body>
|
||||
</html>
|
||||
|
||||
@@ -1,9 +1,21 @@
|
||||
import { Store, FilterTypes } from '../store';
|
||||
|
||||
import produce from 'immer';
|
||||
|
||||
export function addTodo(state: Store['todos'], id: string, label: string): Store['todos'] {
|
||||
return { ...state, [id]: { label, completed: false } };
|
||||
}
|
||||
|
||||
/* For the bonus exercise
|
||||
|
||||
export function addTodo(state: Store['todos'], id: string, label: string): Store['todos'] {
|
||||
return produce(state, draft => {
|
||||
// TODO: implement a simple obj key assignment here
|
||||
});
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
export function remove(state: Store['todos'], id: string) {
|
||||
const newTodos = { ...state };
|
||||
|
||||
|
||||
@@ -11319,7 +11319,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
|
||||
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
||||
|
||||
"use strict";
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"addTodo\", function() { return addTodo; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"remove\", function() { return remove; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"complete\", function() { return complete; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"clear\", function() { return clear; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setFilter\", function() { return setFilter; });\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nfunction addTodo(state, id, label) {\n var _a;\n return __assign({}, state, (_a = {}, _a[id] = { label: label, completed: false }, _a));\n}\nfunction remove(state, id) {\n var newTodos = __assign({}, state);\n delete newTodos[id];\n return newTodos;\n}\nfunction complete(state, id) {\n var newTodos = __assign({}, state);\n newTodos[id].completed = !newTodos[id].completed;\n return newTodos;\n}\nfunction clear(state) {\n var newTodos = __assign({}, state);\n Object.keys(state.todos).forEach(function (key) {\n if (state.todos[key].completed) {\n delete newTodos[key];\n }\n });\n return newTodos;\n}\nfunction setFilter(state, filter) {\n return filter;\n}\n\n\n//# sourceURL=webpack:///./step2-08/exercise/src/reducers/pureFunctions.ts?");
|
||||
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"addTodo\", function() { return addTodo; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"remove\", function() { return remove; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"complete\", function() { return complete; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"clear\", function() { return clear; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"setFilter\", function() { return setFilter; });\nvar __assign = (undefined && undefined.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nfunction addTodo(state, id, label) {\n var _a;\n return __assign({}, state, (_a = {}, _a[id] = { label: label, completed: false }, _a));\n}\n/* For the bonus exercise\n\nexport function addTodo(state: Store['todos'], id: string, label: string): Store['todos'] {\n return produce(state, draft => {\n // TODO: implement a simple obj key assignment here\n });\n}\n\n*/\nfunction remove(state, id) {\n var newTodos = __assign({}, state);\n delete newTodos[id];\n return newTodos;\n}\nfunction complete(state, id) {\n var newTodos = __assign({}, state);\n newTodos[id].completed = !newTodos[id].completed;\n return newTodos;\n}\nfunction clear(state) {\n var newTodos = __assign({}, state);\n Object.keys(state.todos).forEach(function (key) {\n if (state.todos[key].completed) {\n delete newTodos[key];\n }\n });\n return newTodos;\n}\nfunction setFilter(state, filter) {\n return filter;\n}\n\n\n//# sourceURL=webpack:///./step2-08/exercise/src/reducers/pureFunctions.ts?");
|
||||
|
||||
/***/ })
|
||||
|
||||
|
||||
Reference in New Issue
Block a user