本博客之作個人技術筆記來使用,同時分享給大家來看
首先說一下:我是在vue中獲取剪切板的數據,然后對數據進行處理在做相關的操作
但是在成功后我有發現多次進行粘貼就是呈現累加執行,也就是第一次執行一次,第二次執行第一次和第二次,以此類推實現
在網上查了相關資料都是監聽的 點擊事件 就沒有監聽粘貼事件的 ,沒具體差但是好像時只有document有點擊事件,看了很久又說用閉包來解決的,不知道十我沒看懂還是怎么滴就是成功不了,統計調用remove刪除監聽還是沒用,最后靈光一閃我把remove刪除監聽放在add監聽事件含視方法最后執行就成功了
validatefocus(row,index,e){//獲取焦點 row焦點單條的數據,index數組的下標,e是event事件,在下代碼沒用
let _this = this
function handleAction (event) {
// 獲取粘貼板的內容
let pasteValue = (event.clipboardData || window.clipboardData).getData('text');
let paceArray = pasteValue.split(/\n/);
console.log(paceArray,'-----處理后')
paceArray.forEach((item,ind,arr)=>{
if(ind>index && ind<_this.tableData.length){
console.log('進去幾回')
let inde=ind-index
_this.tableData[ind].i_to_data=parseFloat(arr[inde].replace(/\s*/g,""))
}
})
document.removeEventListener('paste', newHandle);
}
var newHandle = function (event) {
handleAction(event)
}
document.addEventListener('paste',newHandle, false);
}
