|
@@ -38,26 +38,77 @@ export const explain = {
|
|
|
this.innerhtml = ''
|
|
|
}
|
|
|
},
|
|
|
+ //图片路径转64位编码
|
|
|
+ getBase64Image(img) {
|
|
|
+ console.log(img)
|
|
|
+ var canvas = document.createElement("canvas");
|
|
|
+ canvas.width = img.width;
|
|
|
+ canvas.height = img.height;
|
|
|
+ var ctx = canvas.getContext("2d");
|
|
|
+ ctx.drawImage(img, 0, 0, img.width, img.height);
|
|
|
+ var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
|
|
|
+ var dataURL = canvas.toDataURL("image/"+ext);
|
|
|
+ return dataURL;
|
|
|
+ },
|
|
|
handlePaste(event, row,name) {//图片的处理(剪切板方法clipboard)//row本行数据,name是传过来的row里面每一个属性
|
|
|
// console.log("handleP",event,row);
|
|
|
var e = event || window.event
|
|
|
e.preventDefault();
|
|
|
const items = (event.clipboardData || window.clipboardData).items;
|
|
|
- // console.log((event.clipboardData || window.clipboardData).getData('Html'))
|
|
|
+ console.log(items)
|
|
|
let file = null;
|
|
|
if (!items || items.length === 0) {//?
|
|
|
this.$message.error("当前浏览器不支持本地");
|
|
|
return;
|
|
|
}
|
|
|
for (let i = 0; i < items.length; i++) {
|
|
|
- // console.log(items[i].type)
|
|
|
+ // console.log(items[i])
|
|
|
if (items[i].type.indexOf("text") !== -1) {
|
|
|
- var text = (e.originalEvent || e).clipboardData.getData('text/plain') || prompt('在这里输入文本');
|
|
|
- //清除回车
|
|
|
- text = text.replace(/\[\d+\]|\n|\r/ig,"")
|
|
|
- let str = row[name]?row[name]:''
|
|
|
- this.$set(row,name,str +text)
|
|
|
- this.saveValue(row[name])
|
|
|
+ // if(items[i].type == 'text/plain'){
|
|
|
+ var text = (e.originalEvent || e).clipboardData.getData('text/plain') || prompt('在这里输入文本');
|
|
|
+ //清除回车
|
|
|
+ text = text.replace(/\[\d+\]|\n|\r/ig,"")
|
|
|
+ let str = row[name]?row[name]:''
|
|
|
+ this.$set(row,name,str +text)
|
|
|
+ this.saveValue(row[name])
|
|
|
+ // }else{
|
|
|
+ // var text = (e.originalEvent || e).clipboardData.getData('text/html')
|
|
|
+ // console.log(text)
|
|
|
+ // let reg =/<img.*?src=[\"|\']?(.*?)[\"|\']?\s.*?>/g
|
|
|
+ // console.log(text.match(reg))
|
|
|
+ // var arr = text.match(reg)
|
|
|
+ // // var text2 = []
|
|
|
+ // // arr.forEach(item=>{
|
|
|
+ // // // text2 = text2+item
|
|
|
+ // // var url = /\bsrc\b\s*=\s*[\'\"]?([^\'\"]*)[\'\"]?/i
|
|
|
+ // // console.log(item.match(url)[1])
|
|
|
+ // // var image = new Image();
|
|
|
+ // // image.src = item.match(url)[1]+ "?v=" + Math.random();;
|
|
|
+ // // // image.crossOrigin = "*";
|
|
|
+ // // image.onload= function(){
|
|
|
+ // // var base64 = getBase64Image(image);
|
|
|
+ // // console.log(base64);
|
|
|
+ // // var new_img = '<img src="' + base64 + '" style="width:80px;height: 80px;border: 1px solid #f9f6f675;vertical-align:middle" >';
|
|
|
+ // // let str = row[name]?row[name]:''
|
|
|
+ // // this.$set(row,name,str +new_img)
|
|
|
+ // // }
|
|
|
+ // // // var img = this.getBase64Image(item.match(url)[1])
|
|
|
+ // // // text2.push(img)
|
|
|
+ // // // console.log(item.match(url))
|
|
|
+
|
|
|
+ // // })
|
|
|
+ // var text2 = ''
|
|
|
+ // arr.forEach(item => {
|
|
|
+ // text2 = text2 + item
|
|
|
+ // });
|
|
|
+ // let str = row[name]?row[name]:''
|
|
|
+ // this.$set(row,name,str +text2)
|
|
|
+ // console.log(row[name])
|
|
|
+ // this.saveValue(row[name])
|
|
|
+
|
|
|
+
|
|
|
+ // }
|
|
|
+
|
|
|
// this.$forceUpdate()
|
|
|
// if(this.tableHeight){
|
|
|
// this.setHeight()
|
|
@@ -76,6 +127,7 @@ export const explain = {
|
|
|
const reader = new FileReader();
|
|
|
reader.onload = (event) => {
|
|
|
var blobUrl = event.target.result
|
|
|
+ console.log(blobUrl)
|
|
|
var new_img = '<img src="' + blobUrl + '" style="width:80px;height: 80px;border: 1px solid #f9f6f675;vertical-align:middle" >';
|
|
|
|
|
|
let str = row[name]?row[name]:''
|