JsExport
Требования к платформе и версии: JS (1.3)
@ExperimentalJsExport @Target([AnnotationTarget.CLASS, AnnotationTarget.PROPERTY, AnnotationTarget.FUNCTION, AnnotationTarget.FILE]) annotation class JsExport
Экспортирует объявление верхнего уровня на платформе JS.
Компилируемый модуль экспортирует объявления, помеченные этой аннотацией, без изменения имён.
Эту аннотацию можно применить к файлам или объявлениям верхнего уровня.
В настоящее время запрещено экспортировать следующие виды объявлений:
-
expectобъявления - встроенные функции с параметрами типа reified
- функции suspend
- вторичные конструкторы без
@JsName - расширяющие свойства
- перечисления
- аннотированные классы
Подписи экспортируемых объявлений должны содержать только «экспортируемые» типы:
-
dynamic,Any,String,Boolean,Byte,Short,Int,Float,Double -
BooleanArray,ByteArray,ShortArray,IntArray,FloatArray,DoubleArray Array<exportable-type>- Типы функций с экспортируемыми параметрами и возвращаемыми типами
-
externalили@JsExportклассы и интерфейсы - NULL-варианты типов выше
- Возвращаемый тип Unit. Не должен быть NULL.
Эта аннотация экспериментальная, а значит, упомянутые выше ограничения могут измениться.
Конструкторы
Требования к платформе и версии: JS (1.0)
<init>
Экспортирует объявление верхнего уровня на платформе JS.
<init>()
© 2010–2020 JetBrains s.r.o. and Kotlin Programming Language contributors
Licensed under the Apache License, Version 2.0.
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.js/-js-export/index.html