Skip to content

Commit e5d25f0

Browse files
committed
Use perf improvements in [email protected]
1 parent 9761f72 commit e5d25f0

File tree

2 files changed

+14
-9
lines changed

2 files changed

+14
-9
lines changed

components/TodoItem.js

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ class TodoItem extends Component {
4646
} else {
4747
element = (
4848
<div className="view">
49-
<input
49+
<input
5050
className="toggle"
5151
type="checkbox"
5252
checked={isCompleted}
@@ -80,16 +80,21 @@ TodoItem.propTypes = {
8080
completeTodo: PropTypes.func.isRequired
8181
}
8282

83-
const mapStateToProps = ({ todos }, { id }) => {
84-
const todo = todos.byId[id]
85-
return {
86-
todo,
87-
isCompleted: todos.isCompletedById[id],
88-
isRelatedTodoCompleted: todos.isCompletedById[todo.relatedId]
83+
const makeMapStateToProps = (initialState, initialProps) => {
84+
const { id } = initialProps
85+
const mapStateToProps = (state) => {
86+
const { todos } = state
87+
const todo = todos.byId[id]
88+
return {
89+
todo,
90+
isCompleted: todos.isCompletedById[id],
91+
isRelatedTodoCompleted: todos.isCompletedById[todo.relatedId]
92+
}
8993
}
94+
return mapStateToProps
9095
}
9196

9297
export default connect(
93-
mapStateToProps,
98+
makeMapStateToProps,
9499
{ completeTodo, editTodo, deleteTodo }
95100
)(TodoItem)

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
"pure-render-mixin": "^1.0.2",
2424
"react": "^0.14.7",
2525
"react-dom": "^0.14.7",
26-
"react-redux": "^4.4.1",
26+
"react-redux": "^4.4.4",
2727
"redux": "^3.3.1",
2828
"reselect": "^2.3.0"
2929
},

0 commit comments

Comments
 (0)