|
@@ -146,15 +146,16 @@ export default {
|
|
|
return newStr
|
|
|
},
|
|
|
uploadImg(imgData) {
|
|
|
- var bytes = window.atob(imgData.split(',')[1]);
|
|
|
- var ab = new ArrayBuffer(bytes.length);
|
|
|
- var ia = new Uint8Array(ab);
|
|
|
- for(var i = 0; i < bytes.length; i++){
|
|
|
- ia[i] = bytes.charCodeAt(i); //这里有点疑惑,ia是怎么改变ab的?注:①
|
|
|
- }
|
|
|
- var blob = new Blob([ab], {type: 'image/jpeg'});
|
|
|
- var fd = new FormData();
|
|
|
- fd.append('file', blob);
|
|
|
+ // var bytes = window.atob(imgData.split(',')[1]);
|
|
|
+ // var ab = new ArrayBuffer(bytes.length);
|
|
|
+ // var ia = new Uint8Array(ab);
|
|
|
+ // for(var i = 0; i < bytes.length; i++){
|
|
|
+ // ia[i] = bytes.charCodeAt(i); //这里有点疑惑,ia是怎么改变ab的?注:①
|
|
|
+ // }
|
|
|
+ // var blob = new Blob([ab], {type: 'image/jpeg'});
|
|
|
+ // var fd = new FormData();
|
|
|
+
|
|
|
+ fd.append('file', base64Url2Blob(imgData));
|
|
|
fd.append('innerPublic',true);
|
|
|
const config = {
|
|
|
headers: {
|
|
@@ -176,6 +177,22 @@ export default {
|
|
|
})
|
|
|
})
|
|
|
},
|
|
|
+ base64Url2Blob (url) {
|
|
|
+ // 将base64url通过 , 分割为含有两个元素的数组
|
|
|
+ const temp = url.split(',')
|
|
|
+ // 将图片的base64编码数据解码
|
|
|
+ const bytes = window.atob(temp[1])
|
|
|
+ // 匹配图片的 mime
|
|
|
+ const mime = temp[0].match(/:(.*?);/)[1]
|
|
|
+ // 创建一个类型化数组,该数组的长度与解码后的图片数据长度相同
|
|
|
+ let ia = new Uint8Array(bytes.length)
|
|
|
+ // 变量图片数据的每一位,并将每一位的 Unicode 编码存入类型化数组
|
|
|
+ for (let i = 0; i < bytes.length; i++) {
|
|
|
+ ia[i] = bytes.charCodeAt(i)
|
|
|
+ }
|
|
|
+ // 通过类型化数组创建一个 Blob 对象
|
|
|
+ return new Blob([ia], {type: mime})
|
|
|
+ },
|
|
|
changeText(e) { // 富文本内容改变
|
|
|
this.inputValue = e
|
|
|
this.$emit('update:value', this.inputValue)
|