2017-11-26 5 views
0

何かをインポートすると、すべてのエクスポートが生成時にエクスポートされます。このよう何かをインポートするときにbabelエクスポート未定義

exports.word2 = exports.word1 = undefined; 

I can reproduce it on babeljs.io

私はこの問題を解決することができますどのように私に言うことができる誰でも:

import something from ''; 

export const word1 = 'Hello'; 
export const word2 = 'World'; 

はこれを生成するのでしょうか?

多分いくつかのプラグインがありますか?コードを変更する必要がありますか?

+2

最後の2行は見ましたか?それに応じて 'Hello'と' World'の値を設定します。 – Li357

+0

あなたが提供したリンク上で再現することはできません。それは全く違って見える。最後の2つの自動生成行は、次のとおりです。 ' var word1 = exports.word1 = 'Hello'; var word2 = exports.word2 = 'World'; ' – anvk

+0

ああ、申し訳ありません。それはうまく動作します。それはそれを解決できないWebstormだけです。 – Jeggy

答えて

2

この文はすべて、exportsオブジェクトのプロパティを作成することです。これは、インポートされたモジュールがrequire dになる前に起こります。これは基本的に変数の「巻き上げ」を明示しています。

エクスポートされたプロパティは、コードの後半で初期化されます。

関連する問題