2015-01-13 10 views
15

ES6構文を使用してモジュールをエクスポートする場合は、現在のランタイムでサポートされている場合のみです。目標は、さまざまなモジュール管理システムをサポートするライブラリを開発することです。 exportとしてes6モジュールをフィーチャー検出する方法

のようなものに構文エラーがスローされ、キーワードです:スペックの

typeof export 
+1

ES5でも 'export'と' import'は予約済みのキーワードであり、キャッチできない構文エラーが発生します – krampstudio

+0

私はES6構文を使うべきだと思います。 6対5でコンパイルされたバージョンを配布することができます。 – Bergi

+0

の可能な複製[どのようにしてES6ジェネレータを機能検出できますか?](http://stackoverflow.com/questions/23096064/how-can-i-feature-detect-es6-generators) – JJJ

答えて

4

Revision 27モジュールの反射のために使用することができReflect.Loader APIを持っていました。

エクスポートキーワード自体の直接の機能検出ではありませんが、data-uriからエクスポートキーワードを使用するモジュールをロードし、解析エラーをスローするかどうかを確認することができました。

しかし、それは、次の変更ログエントリと、リビジョン28で除去されている:

ローダパイプラインとReflect.Loader APIを削除(機能は別仕様に転送される)


したがって、私が知る限り、この仕様は、書面の時点で何らかの形の検出を提供するようには見えない。

今後は、Reflect.Loaderまたはその代替品で可能性があります。

編集:loader specはwhatwgによって管理されているように見えますが、まだ機能検出を取得できた状態ではありません。

+0

未来はまだ到着しましたか? – vsync

+0

提案https://github.com/domenic/proposal-import-functionが現実になる場合([ステージ2](https://github.com/tc39/proposals/blob/master/README.md)右)今すぐ) 'typeof import === 'function''を簡単にチェックします – krampstudio

関連する問題