发布网友 发布时间:2022-04-19 20:27
共1个回答
热心网友 时间:2022-04-23 06:04
作者:hi大头鬼hi
链接:https://zhuanlan.hu.com/p/204825
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
先来看一个简单的demo,如何在RN中调用Android原生的的Toast模块。
index.android.jsvar React = require('react-native');
var {
ToastAndroid,
} = React;
...
ToastAndroid.show('This is a toast with short ration', ToastAndroid.SHORT)
index.android.js是ReactNative的入口文件,后缀Android表示是在Android平台使用的代码。ReactNative内置了babel,所以可以使用最新的JavaScript语法来开发(ECMAScript6简称es6),不熟悉es6的同学可以看看阮一峰写的这本[e6入门教程](ECMAScript 6入门)。这里我简单介绍一下require,Android程序员可以把require对应到Java的import,使用来导入一个JavaScript模块的。`var {ToastAndroid} = React`这种写法叫结构赋值,就是从React这个对象中,提取出ToastAndroid这个属性所对应的值,并赋值给ToastAndroid这个变量。可以看出toast模块就是从react-native这个模块中的ToastAndroid属性,js中的Toast模块API和Android中的JavaAPI基本是保持一致的。