vue粘貼復(fù)制功能的實(shí)現(xiàn)過程記錄
引言
項(xiàng)目中如果實(shí)現(xiàn)粘貼復(fù)制功能,目前市面上共有三種方法,均有利有弊,大家可以根據(jù)自己項(xiàng)目實(shí)際情況依次選擇。本節(jié)將都會(huì)對這三種方法做詳細(xì)闡述,重點(diǎn)推薦第三種方法。
1. 項(xiàng)目需求圖展示:
1. 安裝第三方插件方法(不推薦)
這種方法兼容性很好,如果項(xiàng)目只使用了一次,不建議使用。
安裝插件
npm install clipboard --save
引入插件
import Clipboard from 'clipboard';
項(xiàng)目中使用
<template> <span class="copy" @click="onCopy"> <i class="iconfont iconcopy"></i> <span>點(diǎn)擊復(fù)制</span> </span> </template> <script> methods: { onCopy(){ let clipboard = new Clipboard('.copy') clipboard.on('success', e => { console.log('復(fù)制成功') // 釋放內(nèi)存 clipboard.destroy() }) clipboard.on('error', e => { // 不支持復(fù)制 console.log('該瀏覽器不支持自動(dòng)復(fù)制') // 釋放內(nèi)存 clipboard.destroy() }) } } </script>
2. 瀏覽器自帶Document.execCommand()復(fù)制方法(不推薦)
雖然這個(gè)方法不需要安裝插件,但是官網(wǎng)申明如下:
項(xiàng)目中使用
<script> methods: { onCopy(){ //創(chuàng)建一個(gè)input框 const input = document.createElement("input") //將指定的DOM節(jié)點(diǎn)添加到body的末尾 document.body.appendChild(input) //設(shè)置input框的value值為直播地址 input.setAttribute("value", e) //選取文本域中的內(nèi)容 input.select() //copy的意思是拷貝當(dāng)前選中內(nèi)容到剪貼板 //document.execCommand()方法操縱可編輯內(nèi)容區(qū)域的元素 //返回值為一個(gè)Boolean,如果是 false 則表示操作不被支持或未被啟用 if (document.execCommand("copy")) { document.execCommand("copy") } //刪除這個(gè)節(jié)點(diǎn) document.body.removeChild(input) } </script>
3. Clipboard.writeText方法(強(qiáng)烈推薦)
說明
Clipboard 接口的 writeText() 方法可以寫入特定字符串到操作系統(tǒng)的剪切板。會(huì)返回一個(gè)Promise ,一旦剪貼板的內(nèi)容被更新,它就會(huì)被解析。如果調(diào)用者沒有寫入剪貼板的權(quán)限,則拒絕寫入剪切板(reject)
項(xiàng)目中使用
onCopy() { navigator.clipboard.writeText(this.detailData.clientSecret).then(() => { this.$message.success('復(fù)制成功') }) }
總結(jié)
到此這篇關(guān)于vue實(shí)現(xiàn)粘貼復(fù)制功能的文章就介紹到這了,更多相關(guān)vue粘貼復(fù)制功能內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
vue+electron 自動(dòng)更新的實(shí)現(xiàn)代碼
這篇文章主要介紹了vue+electron 自動(dòng)更新的實(shí)現(xiàn)代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2024-02-02如何使用elementUI組件實(shí)現(xiàn)表格的分頁及搜索功能
最近在使用element-ui的表格組件時(shí),遇到了搜索框功能的實(shí)現(xiàn)問題,這篇文章主要給大家介紹了關(guān)于如何使用elementUI組件實(shí)現(xiàn)表格的分頁及搜索功能的相關(guān)資料,需要的朋友可以參考下2023-03-03vue-cli中devServer.proxy相關(guān)配置項(xiàng)的使用
這篇文章主要介紹了vue-cli中devServer.proxy相關(guān)配置項(xiàng)的使用詳解,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04Vue ElementUi同時(shí)校驗(yàn)多個(gè)表單(巧用new promise)
這篇文章主要介紹了巧用new promise實(shí)現(xiàn)Vue ElementUi同時(shí)校驗(yàn)多個(gè)表單功能,實(shí)現(xiàn)的方法有很多種,本文給大家?guī)淼氖且环N比較完美的方案,需要的朋友可以參考下2018-06-06通過vue.extend實(shí)現(xiàn)消息提示彈框的方法記錄
這篇文章主要給大家介紹了關(guān)于通過vue.extend實(shí)現(xiàn)消息提示彈框的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-01-01vue實(shí)現(xiàn)計(jì)數(shù)器簡單制作
這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)計(jì)數(shù)器簡單制作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-06-06Vue2 使用 Echarts 創(chuàng)建圖表實(shí)例代碼
本篇文章主要介紹了Vue2 使用 Echarts 創(chuàng)建圖表實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05在 Vue-CLI 中引入 simple-mock實(shí)現(xiàn)簡易的 API Mock 接口數(shù)據(jù)模擬
本文以 Vue-CLI 為例介紹引入 simple-mock 實(shí)現(xiàn)前端開發(fā)數(shù)據(jù)模擬的步驟。感興趣的朋友跟隨小編一起看看吧2018-11-11