我在StackOverflow上看到了多个与此有关的问题,但不幸的是,这些问题都没有得到解决。
就我而言,我正在WebView中使用PayuMoney执行交易。 默认情况下,Payumoney在处理交易时打开一个新窗口,该交易在react native的Web视图中不可见,但在移动浏览器中显然可见。
根据此答案-Enable Popups in React Native WebView,我添加了
WebSettings settings = webView.getSettings();
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setSupportMultipleWindows(true); // To enable these by default
还有这个
@ReactProp(name = "javaScriptCanOpenWindowsAutomatically")
public void setJavaScriptCanOpenWindowsAutomatically(WebView view, boolean isCan) {
view.getSettings().setJavaScriptCanOpenWindowsAutomatically(isCan);
}
@ReactProp(name = "supportMultipleWindows")
public void setSupportMultipleWindows(WebView view, boolean supports) {
view.getSettings().setSupportMultipleWindows(supports);
} //To add these as valid props for the WebView Component
此外,我还尝试了多个npm软件包,这些软件包提供WebView的不同实现,但似乎无济于事。
答案 0 :(得分:-1)
尝试使用react-native-webview
代替React-Native Core Webview,它已经具有开箱即用的javascript支持,我认为它可以解决您的问题,请尝试一下。