import * as name from 'module-name'
構文からのトークンにのみ適用したいコードを書いています。
それを行う方法はありますか?フラグまたは類似のものがあることを思い出しますが、__ESModule
それは公式の仕様にはありません。そのため、それが正しいアプローチであるかどうかはわかりません (そして、それについて話している正確な記事が見つかりません。参考文献は素晴らしいでしょう)ヘルプ)。
つまり、これは私が望むものです (例では TypeScript を使用):
import * as someModule from 'module-name'
import someDefault from 'module-name'
import { someNamed } from 'module-name'
import otherImport = require('cjs-module')
let somethingElse = {} // anything
checkIsStarModule(someModule) // true
checkIsStarModule(someDefault) // false
checkIsStarModule(someNamed) // false
checkIsStarModule(otherImport) // false
checkIsStarModule(somethingElse) // false
import * as name ...
構文を説明する適切な名前は何ですか? :)
編集:質問にいくつかのコンテキストを追加します。
に似たようなことをしていaurelia
ますFrameworkConfiguration
。
someModule
そして、上記のようにのみ適用したいと思います。configure()
これは、モジュールではないものに対して誤ってメソッドを実行したくないためです。
私のAPIはあり、消費者が(単に任意のクラス)get(key: Newable<T> | T): Promise<T>
として何でもスローできるようにします。key
Newable<T>
@estus on__esModule
に感謝します。これは相互運用のためだけのものであるため、このコンテキストでは役に立たないことに気付きました。