uniapp中实现<text>文本内容点击可复制或拨打电话

template 部分

vue 复制代码
<template>
    <view>
        <text @tap="handlePhoneClick('1234567890')">1234567890</text>
    </view>
</template>

script 部分

vue 复制代码
export default {
    methods: {
        handlePhoneClick(phoneNumber) {
            uni.showActionSheet({
                itemList: ['复制', '拨打'],
                success: (res) => {
                    if (res.tapIndex === 0) {
                        // 复制操作
                        uni.setClipboardData({
                            data: phoneNumber,
                            success: () => {
                                uni.showToast({
                                    title: '复制成功',
                                    icon: 'success'
                                });
                            },
                            fail: () => {
                                uni.showToast({
                                    title: '复制失败',
                                    icon: 'none'
                                });
                            }
                        });
                    } else if (res.tapIndex === 1) {
                        // 拨打操作
                        uni.makePhoneCall({
                            phoneNumber: phoneNumber
                        });
                    }
                }
            });
        }
    }
};

在上述代码中,当点击包含电话的 标签时,会弹出一个操作菜单,用户可以选择复制电话号码或者直接拨打该号码。uni.setClipboardData用于实现复制功能,uni.makePhoneCall用于实现拨打电话功能。

相关推荐
天宇&嘘月2 小时前
web第三次作业
前端·javascript·css
小王不会写code2 小时前
axios
前端·javascript·axios
发呆的薇薇°3 小时前
vue3 配置@根路径
前端·vue.js
luckyext4 小时前
HBuilderX中,VUE生成随机数字,vue调用随机数函数
前端·javascript·vue.js·微信小程序·小程序
小小码农(找工作版)4 小时前
JavaScript 前端面试 4(作用域链、this)
前端·javascript·面试
前端没钱4 小时前
前端需要学习 Docker 吗?
前端·学习·docker
前端郭德纲4 小时前
前端自动化部署的极简方案
运维·前端·自动化
海绵宝宝_4 小时前
【HarmonyOS NEXT】获取正式应用签名证书的签名信息
android·前端·华为·harmonyos·鸿蒙·鸿蒙应用开发
码农土豆5 小时前
chrome V3插件开发,调用 chrome.action.setIcon,提示路径找不到
前端·chrome
鱼樱前端5 小时前
深入JavaScript引擎与模块加载机制:从V8原理到模块化实战
前端·javascript