Js Non Module
Начиная с Kotlin: 1.1
annotation class JsNonModule@Target(allowedTargets = [AnnotationTarget.CLASS,AnnotationTarget.PROPERTY, AnnotationTarget.FUNCTION, AnnotationTarget.FILE ] )
Обозначает объявление external, которое можно использовать без системы модулей.
По умолчанию объявление external доступно независимо от целевой системы модулей. Однако, применив аннотацию JsModule, вы можете сделать объявление недоступным для обычной системы модулей. Некоторые библиотеки JavaScript распространяются как в виде отдельного загружаемого фрагмента JavaScript, так и в виде модуля, доступного в качестве пакета npm. Чтобы сообщить компилятору Kotlin о необходимости поддерживать оба случая, можно дополнить JsModule аннотацией @JsNonModule.
Например:
@JsModule("jquery")
@JsNonModule
@JsName("$")
external abstract class JQuery() {
// some declarations here
}
@JsModule("jquery")
@JsNonModule
@JsName("$")
external fun JQuery(element: Element): JQuery
См. также
© 2010–2026 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.js/-js-non-module/index.html