teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

a

2018/05/14 13:54

投稿

HayatoKamono
HayatoKamono

スコア2415

answer CHANGED
@@ -32,4 +32,26 @@
32
32
  import rootReducer from './reducers';
33
33
  ```
34
34
 
35
- 特に、この読み込んでいるファイルなどですね。
35
+ 特に、この読み込んでいるファイルなどですね。
36
+
37
+
38
+ > 可能であれば、このような時にどの段階で(reducer、container、componentsのどこで)要素の受け渡しに失敗しているのか、確認する方法も合わせて教えていただけますと幸いです。
39
+
40
+ 今回のエラーは`TypeError: Cannot read property 'map' of undefined`なので、`Recipes`コンポーネントの`props`に渡ってくることを期待している`RecipeList`が`undefined`であることが分かります。
41
+
42
+ なので、`Recipes`コンポーネントの前のどこかに原因があると言えます。
43
+
44
+ ```
45
+ const mapStateToProps = state => {
46
+ //確認
47
+ console.log(state);
48
+
49
+ return{
50
+ recipeList: state.recipesReducer
51
+ };
52
+ }
53
+ ```
54
+
55
+ その上で今度はひとつ手前のところで、`mapStateToProps`の引数に渡ってくる`state`に期待通りの値が存在しているかをチェックしてみましょう。
56
+
57
+ ここで問題がなければ、これ以降が原因ですし、ここに問題があれば、その手前の`reducer`周りに問題があると言えます。(さらにそれより以前のところに問題がある可能性もあります)