React-Native[8.共有、リンク]


共有


サンプルコード

Detail.js

import React,{useState,useEffect} from 'react';
import { StyleSheet, Text, View, Image, ScrollView,TouchableOpacity,Alert,Share } from 'react-native';

.
.
.

    const share = () => {
        Share.share({
            message:`${tip.title} \n\n ${tip.desc} \n\n ${tip.image}`,
        });
    }
    return ( 
        <ScrollView style={styles.container}>
            <Image style={styles.image} source={{uri:tip.image}}/>
            <View style={styles.textContainer}>
                <Text style={styles.title}>{tip.title}</Text>
                <Text style={styles.desc}>{tip.desc}</Text>
                <View style={styles.buttonGroup}>
                    <TouchableOpacity style={styles.button} onPress={()=>popup()}><Text style={styles.buttonText}>팁 찜하기</Text></TouchableOpacity>
                    <TouchableOpacity style={styles.button} onPress={()=>share()}><Text style={styles.buttonText}>팁 공유하기</Text></TouchableOpacity>
                </View>
            </View>
        </ScrollView>
    )
}

.
.
.

使用方法

import { Share } from "react-native";
  • の既存の「リアクション-ネイティブ」ライブラリからShare機能を追加し、
  • にインポート
  • 共有機能を実行するときに使用できるShare機能を記述します.
  • の例ではShareである.share関数にメッセージが記述されています.
  • 矢印関数を使用してshare()関数を実行します.
  • リンク


    インストールコード

    expo install expo-linking

    サンプルコード

    Detail.js
    
    import React,{useState,useEffect} from 'react';
    import { StyleSheet, Text, View, Image, ScrollView,TouchableOpacity,Alert,Share } from 'react-native';
    import * as Linking from 'expo-linking';
    
    export default function DetailPage({navigation,route}) {
    
    .
    .
    .
    
        const link = () => {
            Linking.openURL("https://spartacodingclub.kr")
        }
        return (
            <ScrollView style={styles.container}>
                <Image style={styles.image} source={{uri:tip.image}}/>
                <View style={styles.textContainer}>
                    <Text style={styles.title}>{tip.title}</Text>
                    <Text style={styles.desc}>{tip.desc}</Text>
                    <View style={styles.buttonGroup}>
                        <TouchableOpacity style={styles.button} onPress={()=>popup()}><Text style={styles.buttonText}>팁 찜하기</Text></TouchableOpacity>
                        <TouchableOpacity style={styles.button} onPress={()=>share()}><Text style={styles.buttonText}>팁 공유하기</Text></TouchableOpacity>
                        <TouchableOpacity style={styles.button} onPress={()=>link()}><Text style={styles.buttonText}>외부 링크</Text></TouchableOpacity>
                    </View>
                    
                </View>
                
            </ScrollView>
        
        )
    }
    
    .
    .
    .
    

    使用方法

    import * as Linking from 'expo-linking';
  • 万博-接続を設定します.
  • 「万博リンク」ライブラリは*(すべて)をリンクとして宣言します.
  • リンク機能を実行するときに起動するリンク機能を記述します.
    例ではLinkingOpenURL関数を用いてスパルタ符号化サイトにアクセスすることを記述した.
  • 矢印関数を使用してlink()関数を実行します.