这个其实在RN的文档中已经写好了,不过最新的依然不需要做文档中的额外步骤。
直接在自定义的组件里面引用Linking,然后使用Linking的openURL函数即可,这个会自动选择系统的浏览器打开链接。
- varurl=‘http://www.baidu.com’;
- Linking.openURL(url)
- .catch((err)=>{
- console.log(’Anerroroccurred’,err);
- });
var url = 'http://www.baidu.com'; Linking.openURL(url) .catch((err)=>{ console.log('An error occurred',err); });
还可以使用canOpenURL做一次判断,是否是有效的地址,然后根据判断进行上面的操作:
- Linking.canOpenURL(url)
- .then((supported)=>{
- if(!supported){
- console.log(’Can\’thandleurl:’+url);
- Alert.alert(
- ’提示’,
- ’Can\’thandleurl:’+url,
- [
- {text:’OK’,onPress:()=>{}}
- ]
- );
- }else{
- returnLinking.openURL(url);
- }
- })
- .catch((err)=>{
- console.log(’Anerroroccurred’,err);
- Alert.alert(
- ’提示’,
- ’Anerroroccurred:’+err,
- [
- {text:’OK’,onPress:()=>{}}
- ]
- );
- });