VUE 實(shí)現(xiàn)復(fù)制內(nèi)容到剪貼板的兩種方法
VUE 復(fù)制內(nèi)容至剪切板(兩種使用方法)
復(fù)制內(nèi)容至剪切板使用的是插件'vue-clipboard2',通過官方文檔會(huì)發(fā)現(xiàn)共有兩種使用方式。
第一種方式與大多數(shù)文章類似,只粘貼代碼:
<template>
<div class="container">
<input type="text" v-model="message">
<button type="button"
v-clipboard:copy="message"
v-clipboard:success="onCopy"
v-clipboard:error="onError">Copy!</button>
</div>
</template>
<script>
export default {
data() {
return {
message: 'Copy These Text',
}
},
methods: {
onCopy: function (e) {
alert('You just copied: ' + e.text)
},
onError: function (e) {
console.log(e)
alert('Failed to copy texts')
}
}
}
</script>
這種使用方式直接將變量內(nèi)容復(fù)制至剪切板,暫時(shí)沒有找到處理數(shù)據(jù)后再復(fù)制的方式,這時(shí)就需要使用第二種方式。
第二種方式:
<template>
<div class="container">
<input type="text" v-model="message">
<button type="button" @click="doCopy('add me!')">Copy!</button>
</div>
</template>
<script>
export default {
data() {
return {
message: 'Copy These Text'
}
},
methods: {
dataProcessing (val) {
this.message = this.message + ' ' + val
},
doCopy: function (val) {
this.dataProcessing(val)
this.$copyText(this.message).then(function (e) {
alert('Copied')
console.log(e)
}, function (e) {
alert('Can not copy')
console.log(e)
})
}
}
}
</script>
通過這段示例代碼能看到,復(fù)制動(dòng)作使用的是VUE響應(yīng)函數(shù)方式,這就為復(fù)制前控制數(shù)據(jù)提供了可能!
下面在看下vue實(shí)現(xiàn)復(fù)制內(nèi)容到剪貼板功能,具體內(nèi)容如下所示:
注: 依賴第三方插件 clipboard
一、安裝插件
npm install vue-clipboard2 --save
二、全局注入(main.js)
import VueClipboard from 'vue-clipboard2' Vue.use(VueClipboard)
三、使用
<ul class="file-list">
<li v-for="(f, index) of files" :key="index">
<span>[文件{{index + 1}}] {{f}}</span>
<span class="copy-btn" v-clipboard:copy="f" v-clipboard:success="onCopy" v-clipboard:error="onError">復(fù)制</span>
</li>
</ul>
// 復(fù)制成功時(shí)的回調(diào)函數(shù)
onCopy (e) {
this.$message.success("內(nèi)容已復(fù)制到剪切板!")
},
// 復(fù)制失敗時(shí)的回調(diào)函數(shù)
onError (e) {
this.$message.error("抱歉,復(fù)制失敗!")
}
四、效果圖

總結(jié)
以上所述是小編給大家介紹的VUE 實(shí)現(xiàn)復(fù)制內(nèi)容到剪貼板功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
Vue中修改Mint UI的Toast默認(rèn)樣式之字體大小調(diào)整方式
這篇文章主要介紹了Vue中修改Mint UI的Toast默認(rèn)樣式之字體大小調(diào)整方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
Vue如何給組件添加點(diǎn)擊事件?@click.native
這篇文章主要介紹了Vue如何給組件添加點(diǎn)擊事件?@click.native,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10
vue實(shí)現(xiàn)動(dòng)態(tài)面包屑導(dǎo)航
這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)動(dòng)態(tài)面包屑導(dǎo)航的使用方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
前端設(shè)置cookie之vue-cookies使用及說明
這篇文章主要介紹了前端設(shè)置cookie之vue-cookies使用及說明,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05
Vue3 + TypeScript 開發(fā)總結(jié)
本文直接上 Vue3 + TypeScript + Element Plus 開發(fā)的內(nèi)容,感興趣的話一起來看看吧2021-08-08

