Javascript 反应本机-打开本机共享
嗨,我正在使用react native的webview显示一些HTML。每当用户单击HTML中的共享按钮时,我希望它打开本机共享 可能吗 编辑1Javascript 反应本机-打开本机共享,javascript,react-native,Javascript,React Native,嗨,我正在使用react native的webview显示一些HTML。每当用户单击HTML中的共享按钮时,我希望它打开本机共享 可能吗 编辑1 #你的应用程序反应自然 从“react native”导入{Share,WebView} nativeShare=异步(数据)=>{ 常量共享选项={ message:data.message } if('object'==typeof data&&data.external\u url\u open){ 返回Linking.openURL(data.
#你的应用程序反应自然
从“react native”导入{Share,WebView}
nativeShare=异步(数据)=>{
常量共享选项={
message:data.message
}
if('object'==typeof data&&data.external\u url\u open){
返回Linking.openURL(data.external\u url\u open);
}否则{
试一试{
等待股票。股票(股票期权)
}捕获(错误){
警报(错误消息);
}
}
}
{this.nativeShare(JSON.parse(event.nativeEvent.data))}
/>
#在你的申请书中你发了什么
var message='hello';
window.postMessage(消息);
您可以将HTML中的消息发布到组件中,并在收到消息时显示本机共享窗口。
查看RN的WebView的这个道具
我认为这不可能马上实现。尝试将webview和本地元素结合使用。这是可能的,我做到了@P-RAD
# your app react-native
import {Share, WebView} from 'react-native'
nativeShare = async (data) => {
const shareOptions = {
message: data.message
}
if ('object' == typeof data && data.external_url_open) {
return Linking.openURL(data.external_url_open);
} else {
try {
await Share.share(shareOptions)
}catch (error) {
alert(error.message);
}
}
}
<WebView
source={{ uri: "https://google.com" }}
javaScriptEnabled={true}
onMessage={event => { this.nativeShare(JSON.parse(event.nativeEvent.data)) }}
/>
# in your aplication did u post
var message = 'hello';
window.postMessage(message);