問題タブ [kotlin-js-interop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kotlin - kotlin js でリソース ファイル (json) を読み込む
このコードを考えると、ランタイムで見つけられるように file.json をどこに配置する必要がありますか?
運が悪かったので、src/main/resources/ の下に配置しようとしました。また、Gradle を使用して、プラグインを使用して kotlin を js にコンパイルしkotlin2js
ます。
kotlin - Kotlin/JS 外部宣言 - 「JavaScript 識別子に表示できない不正な文字が名前に含まれています」
編集: これはまだサポートされておらず、Kotlin YouTrack で追跡されています
次の Typescript インターフェイスに一致する Kotlinexternal
宣言を記述しようとしています (これは、 を介した JavaScript アクセスを表す有効な TS ですheaders['content-length']
)。
Dukat は以下を生成しますが、これは有効と見なされます。
しかし今、コンパイラは次のように文句を言います:
Name contains illegal chars that can't appear in JavaScript identifier
JS 識別子に表示できないのは事実ですが、そうする必要はありません。このプロパティへのすべての Kotlin アクセスは次のようになります。
にコンパイルされた場合に有効になる可能性がありますconst length = headers["content-length"]
。
@JsName
次の方法で回避するために使用しようとしました。
@JsName("content-length")
@JsName("'content-length'")
@JsName("\"content-length\"")
しかし、有効な JS 識別子である文字列のみを許可するため、これらはすべて失敗します。これを回避する方法はありますか?