Chrys
02/29/2024, 12:59 PM<div data-foo="bar"></div>
in the 1.0.0-pre.623 wrapper bom version. So far attrs in div { attrs["data-foo"] = bar
} hasn't been recognizedArtem Kobzar
02/29/2024, 1:08 PMturansky
02/29/2024, 1:13 PMkotlin-react-dom-legacy
😞Chrys
02/29/2024, 1:15 PMplugins {
alias(libs.plugins.kotlin.multiplatform)
alias(libs.plugins.kotlin.serialization)
}
val kotlinWrappersVersion = "1.0.0-pre.623"
kotlin {
js(IR) {
binaries.executable()
browser {
commonWebpackConfig (Action {
cssSupport {
enabled.set(true)
}
})
webpackTask (Action {
mainOutputFileName.set("web.js")
})
testTask ( Action {
useKarma {
useChromeHeadless()
}
})
}
}
sourceSets {
val jsMain by getting {
dependencies {
implementation(kotlin("stdlib-js"))
implementation(enforcedPlatform("org.jetbrains.kotlin-wrappers:kotlin-wrappers-bom:$kotlinWrappersVersion"))
implementation("org.jetbrains.kotlin-wrappers:kotlin-react")
implementation("org.jetbrains.kotlin-wrappers:kotlin-react-dom")
implementation("org.jetbrains.kotlin-wrappers:kotlin-react-router-dom")
implementation("org.jetbrains.kotlin-wrappers:kotlin-emotion")
implementation("org.jetbrains.kotlin-wrappers:kotlin-mui")
}
}
val jsTest by getting {
dependencies {
implementation(kotlin("test"))
}
}
}
}
Am Ituransky
02/29/2024, 1:17 PMkotlin-react-dom
recommended solution - strict extension on HTMLAttributes
var HTMLAttributes<*>.dataFoo: String?
get() = asDynamic()["data-foo"]
set(value) = {
asDynamic()["data-foo"] = value
}
turansky
02/29/2024, 1:18 PMdiv {
dataFoo = "bar"
}
Chrys
02/29/2024, 1:20 PMturansky
02/29/2024, 1:21 PMinput
only for exampleturansky
02/29/2024, 1:21 PMvar HTMLAttributes<HTMLInputElement>.dataFoo: String?
get() = asDynamic()["data-foo"]
set(value) = {
asDynamic()["data-foo"] = value
}
turansky
02/29/2024, 5:24 PMexternal var HTMLAttributes<HTMLInputElement>.dataFoo: String?
😉