frank
01/19/2021, 7:22 PMjs() function?
Code:
external fun require(module: String): dynamic
fun App() {
val Koa = require("koa")
val app = Koa() //Dont work: Generate Koa() in JS script need new Koa()
val app = js("new Koa()") // GOOD
}
Generate this:
var Koa = require('koa');
var app = Koa(); //BAD: i need new Koa() in JS scriptturansky
01/19/2021, 7:45 PM@JsModule("koa")
external class Koa
fun App() {
val app = Koa()
}turansky
01/19/2021, 8:51 PMturansky
01/19/2021, 8:51 PMfrank
01/19/2021, 8:53 PM@JsModule("koa")
external class Koa
fun App() {
val app = Koa()
}
Last question: I need the variable app to be dynamic to call js functions.
I tried this: Any Alternative?
val app:dynamic = Koa()
app.use()turansky
01/19/2021, 8:54 PM@JsModule("koa")
external class Koa {
fun use()
}frank
01/19/2021, 8:55 PMturansky
01/19/2021, 8:55 PMval app = Koa().asDynamic()
app.use()frank
01/19/2021, 8:55 PMfrank
01/19/2021, 9:27 PMexternal fun require (module: String): dynamic by @JsModule .
Official doc.: Says to use @JsModule but it says nothing about external fun require (module: String) .turansky
01/19/2021, 9:50 PMrequire - low level api (block optimization in most cases)
@JsModule used for strict typization (loading mode - implementation details)
I real live both can be used (I use both), depends on your case
@JsModule in most casesturansky
01/19/2021, 9:51 PMrequire can be configured by webpack loaders