本地复制内容函数
copyText: function (e) {
console.log(e)
// 复制内容可以先全局保存后面会用到
app.data.presentCopy = e.currentTarget.dataset.text;
wx.setClipboardData({
data: e.currentTarget.dataset.text,
success: function (res) {
wx.getClipboardData({
success: function (res) {
wx.showToast({
title: '复制标题成功',
})
}
})
}
})
}
然后是监听剪切板内容的封装函数
var revaue = data.replace(/^\s*|(\s*$)/g, “”);
正则去掉空格
然后判断 revaue 是否有内容
这个时候前面全局保存的复制内容就有用处了
判断是否为内部复制 如果是则不弹窗
boxShow :为弹窗是否显示 (样式就不用我发出来了吧 )
getClipData: function( _this ){
var app = this;
// 判断是否登录
wx.getClipboardData({
success(res) {
let data = res.data;
var revaue = data.replace(/^\s*|(\s*$)/g, "");
//有复制内容
if (revaue) {
//判断是否是内部复制
if (app.data.presentCopy == revaue) {
return;
} else {
//暂存数据至页面
_this.setData({
boxShow: true,
plateCantent: revaue
});
// 弹窗后清空剪切板 ,避免反复弹窗
wx.setClipboardData({
data: ' ',
success() {
wx.showToast({
title: '',
icon: 'none',
image: ''
});
wx.hideToast();
}
})
}
};
}
});
}
望鞭策