はじめに
Reactを学んでみようと思い、Udemyの教材で学んでいたところ分割代入でつまづきました
問題
const {name, age} = myProfile; の箇所で「Cannot redeclare block-scoped variable 'name'」というエラーが発生しました
調べたところ、ブロックスコープで再宣言はできないよ!と怒られているようです
const myProfile = {
name: "ナマケモノ",
age: 3,
};
const {name, age} = myProfile;
const message2 = `名前は${name}です。年齢は${age}歳です。`;
console.log(message2);
解決?
エラーが出ているconst {name, age} = myProfileの行をまるまる消すと動くようになりました
しかし、これで本当に分割代入としてできているのでしょうか!?(宣言も何もなしにプロパティの値をつっこんでいるだけでは???)
他の所でnameやageを宣言した時はどうなるんだろうという不安は残りますが、それはまた今度試してみたいと思います
終わりに
教材の内容通りに書いて動かないのはバージョン違いとかの影響なんでしょうかね、、、
これからも、つまづいたことを一つずつ投稿していきたい思います
以上、初投稿でした~~~!
【追記】
ミスを発見できたので追記します
上の方で以下の定義を行っており、コメントアウトしたつもりができていませんでした!
const name = "ナマケモノ";
const age = 3;
これをコメントアウトしたところ、最初のコードで動かせました
やっぱりエラーさんが言っていることは常に正しいんだなぁという感想しかありません
参考