Kotlin相当于"导出默认"在JavaScript中

时间:2017-09-08 03:31:27

标签: javascript kotlin

我尝试使用Kotlin构建我的React Native应用程序,目前正在将预先存在的JavaScript代码转换为它。但是,我不知道Kotlin相当于export default的等价物。是否需要这样的代码?

我试图转换的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',
  },
});

1 个答案:

答案 0 :(得分:2)

目前,Kotlin / JS编译器按模块工作,即为标记为模块的一组Kotlin源文件(IDEA中的模块,Gradle中的项目或模块Maven)生成单个JavaScript文件。如果将moduleKind编译器选项设置为commonjsumd值,Kotlin / JS会将此文件转换为CommonJS模块,导出根包并导入所有相关模块。您提供的JavaScript代码没有直接等效,因此您可能需要更改类的导入方式。

考虑一下你在Kotlin中宣布这样的事情:

package my.pkg

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

在名为myModule的模块中。您可以通过以下代码将App类导入JavaScript:

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

有关Kotlin / JS如何与JavaScript交互的更多信息,请参阅文档: