Comment afficher un lien hypertexte dans une application React Native?
par exemple
<a href="https://google.com>Google</a>
javascript
react-native
Will Chu
la source
la source
Réponses:
Quelque chose comme ça:
en utilisant le
Linking
module fourni avec React Native.la source
this.props.url
à la place de'http://google.com'
(pas d'accolades nécessaires)import { Linking } from 'react-native';
dans votre document?<Text>Some paragraph <Text onPress=...>with a link</Text> inside</Text>
La réponse sélectionnée se réfère uniquement à iOS. Pour les deux plates-formes, vous pouvez utiliser le composant suivant:
la source
Pour ce faire, j'envisagerais fortement d'encapsuler un
Text
composant dans un fichierTouchableOpacity
. Quand aTouchableOpacity
est touché, il s'estompe (devient moins opaque). Cela donne à l'utilisateur une rétroaction immédiate lorsqu'il touche le texte et fournit une expérience utilisateur améliorée.Vous pouvez utiliser la
onPress
propriété sur leTouchableOpacity
pour créer le lien:la source
La documentation React Native suggère d'utiliser
Linking
:Référence
Voici un cas d'utilisation très basique:
Vous pouvez utiliser la notation des composants fonctionnels ou de classe, au choix des concessionnaires.
la source
Utilisez React Native Hyperlink (
<A>
balise native ):Installer:
importer:
Usage:
<A>Example.com</A>
<A href="example.com">Example</A>
<A href="https://example.com">Example</A>
<A href="example.com" style={{fontWeight: 'bold'}}>Example</A>
la source
Une autre note utile à ajouter aux réponses ci-dessus est d'ajouter un style de flexbox. Cela gardera le texte sur une seule ligne et garantira que le texte ne chevauche pas l'écran.
la source
pour le React Native, il existe une bibliothèque pour ouvrir des hyperliens dans l'application. https://www.npmjs.com/package/react-native-hyperlink
En plus de cela, je suppose que vous devrez vérifier l'URL et que la meilleure approche est Regex. https://www.npmjs.com/package/url-regex
la source
Si vous souhaitez créer des liens et d'autres types de texte enrichi, une solution plus complète consiste à utiliser React Native HTMLView .
la source
Je pensais juste que je partagerais ma solution hacky avec tous ceux qui découvrent ce problème maintenant avec des liens intégrés dans une chaîne. Il tente d' insérer les liens en les rendant dynamiquement avec la chaîne qui y est introduite.
N'hésitez pas à l'adapter à vos besoins. Cela fonctionne pour nos objectifs en tant que tels:
Ceci est un exemple de la façon dont https://google.com apparaîtrait.
Visualisez-le sur Gist:
https://gist.github.com/Friendly-Robot/b4fa8501238b1118caaa908b08eb49e2
la source
Importer la liaison du module depuis React Native
Essayez-le: -
la source