「デフォルトのエクスポートをインポートする場合、{}
は必要ない」ということを学んだのでメモしておきます。
export default
で定義されている関数を読み込む場合
export default function
で定義された関数をimport
するとき、{}
は必要ない。
hello.js
export default function hello (msg) { document.body.innerHTML = msg console.log(msg) }
index.js
import hello from './hello';
デフォルトで定義された関数は{}
をつけなくてもいい。
{}
をつける場合
モジュールからエクスポートをひとつインポートしたい場合は、{}
をつける。
hello.js
export function hello (msg) { document.body.innerHTML = msg console.log(msg) } // 他にもいくつかの関数が定義されているとする
{}
をつけてインポートする。
index.js
import { hello } from './hello';
あんまりこういったケースはないかもしれないけど、ES Modules の学習中に少し詰まった部分なのでアウトプットしておく。
それにしても、「デフォルトのエクスポートをインポートする場合、{}
は必要ない」って結構めちゃくちゃな日本語だな😅