Котлинский эквивалент «экспортного дефолта» в JavaScript

Я пытаюсь использовать Kotlin для создания моего приложения React Native, и в настоящее время я перехожу к нему, используя предыдущий код JavaScript. Однако я не знаю, что такое эквивалент export default Kotlin. Есть ли необходимость в таком коде?

Класс JS, который я пытаюсь преобразовать:

 import React from 'react'; import { StyleSheet, Text, View } from 'react-native'; export default class App extends React.Component { render() { return ( <View style={styles.container}> <Text>Open up App.js to start working on your app!</Text> </View> ); } } const styles = StyleSheet.create({ container: { flex: 1, backgroundColor: '#fff', alignItems: 'center', justifyContent: 'center', }, }); 

В настоящее время компилятор Kotlin / JS работает для каждого модуля, т. Е. Генерирует один файл JavaScript для набора исходных файлов Kotlin, помеченных как модуль (либо модуль в IDEA, проект в Gradle, либо модуль Maven). Если вы установите moduleKind параметра moduleKind компилятор значение commonjs или commonjs , Kotlin / JS превратит этот файл в модуль CommonJS, при этом будет экспортирован корневой пакет и импортированы все зависимые модули. Нет прямого эквивалента кода JavaScript, который вы предоставили, поэтому вам, возможно, потребуется изменить способ импорта вашего класса.

Подумайте, что вы заявляете что-то подобное в Котлине:

 package my.pkg class App : React.Component() { // some code here } 

в модуле с именем myModule . Вы можете импортировать класс App в JavaScript по следующему коду:

 const App = require('myModule').my.pkg.App 

Для получения дополнительной информации о том, как Kotlin / JS взаимодействует с JavaScript, см. Документацию:

  • на модульных системах (включая CommonJS);
  • по вызову Котлина из JavaScript ;
  • по вызову JavaScript из Котлина .