¿Cómo puedo get una reference a Kotlin KClass por nombre cuando no se ejecuta en la JVM?

Cuando la orientación es Javascript y la java.lang.Class.forName() nativa java.lang.Class.forName() no está disponible. ¿Cómo puedo get una KClass en estos entornos?

Como decía en la documentation de Kotlin :

En este momento, JavaScript no es compatible con la API completa de Kotlin reflection. La única parte soportada de la API es la syntax de la ::class que le permite referirse a la class de una instancia, o la class correspondiente al tipo dado. El valor de una expresión ::class es una implementación KClass que solo admite los miembros simpleName y isInstance .

Aquí está el ejemplo:

 val a = A() print(a::class.simpleName) // Obtains class for an instance; prints "A" print(A::class.simpleName) // Obtains class for a type; prints "B" 

No lo SomeClass::class versiones nativas ni de JavaScript (sí funciona en JVM) pero puedes hacer SomeClass::class . Documentos de Kotlin

  • Kotlin: doble operador de colon (reflexión) sobre
  • Determinar si una instancia es una instancia de una class de datos
  • ¿Cómo establecer el valor de propiedad delegada por reflexión en kotlin?
  • El operador de Kotlin Reflection obtiene la implementación
  • ¿Es seguro llamar a kclass.memberProperties en un object desconocido (Cualquiera)?
  • Crear una nueva instancia de una KClass
  • Kotlin: ¿Es aquí una forma inteligente de lanzar NotImplementedError para todos los methods de una class?
  • ¿Cómo puedo get una reference a un object Kotlin por su nombre?
  • String.intern () devuelve diferentes valores en un controller JDBC
  • kotlin reflexión verificación nullable types
  • Acceda al tipo de delegado de Kotlin sin una instancia