在过去的几个星期里,我试图弄清楚如何将一个外部web应用程序(通过THREE.js)进行3d建模,并将其放入viro应用程序中。我尝试了webview,这很有效,但我需要将模型导入到我的Viro应用程序中。我尝试了WebViewBridge模块(理论上它可以将.obj文件作为字符串从uses视图发送到我的应用程序中,这样我就可以在AR中显示它),但是它似乎无法在Viro使用的本机反应版本上工作。
<View >
<WebViewBridge
ref="webviewbridge"
source={{uri: 'http://www.google.com'}}>
</WebViewBridge>
</View>当我将"webviewbridge“改为"webview”时,如果我按下按钮,它就会在一个新视图中显示google。我的目标是让网页应用程序显示出来,点击一下按钮,我就可以得到三维模型并在增强现实(病毒反应的一个特性)中显示出来。
技术信息:
发布于 2018-03-06 09:54:23
我的错,它现在使用"injectedJavaScript“道具。
let jsCode = " document.querySelector('#myContent').style.backgroundColor = 'green';";
return(
<View style={localStyles.viroContainer}> //this just sets flex to 1
<WebView
source={{ html: "<h1 id='myContent'>Hello</h1>" }}
style={{ flex: 1 }}
ref={ webview => { this.webview = webview; }}
injectedJavaScript={jsCode}
javaScriptEnabled={true}>
</WebView>
<TouchableHighlight style={localStyles.overlayButton}
onPress={this.sendMessageToWebView2} underlayColor='transparent'>
<Text>Send message to WebView</Text>
</TouchableHighlight>
</View>
);
}我成功地获得了一个警告,在我的网页视图中的一个字符串现在按钮点击(sendmessagetowebview2),但我还没有设法改变injectedJavaScript。
https://stackoverflow.com/questions/49106691
复制相似问题