MCPcopy Index your code
hub / github.com/TruthHun/BookStack / uploadImage

Function uploadImage

static/js/editor.js:231–285  ·  view source on GitHub ↗
($id,$callback)

Source from the content-addressed store, hash-verified

229}
230
231function uploadImage($id,$callback) {
232 /** 粘贴上传图片 **/
233 document.getElementById($id).addEventListener('paste', function(e) {
234
235 var clipboard = e.clipboardData;
236 for (var i = 0, len = clipboard.items.length; i < len; i++) {
237 if (clipboard.items[i].kind === 'file' || clipboard.items[i].type.indexOf('image') > -1) {
238
239 var imageFile = clipboard.items[i].getAsFile();
240
241 console.log(imageFile)
242 var fileName = Date.parse(new Date());
243
244 switch (imageFile.type){
245 case "image/png" : fileName += ".png";break;
246 case "image/jpg" : fileName += ".jpg";break
247 case "image/jpeg" : fileName += ".jpeg";break;
248 case "image/gif" : fileName += ".gif";break;
249 default : layer.msg("不支持的图片格式");return;
250 }
251 var form = new FormData();
252
253 form.append('editormd-image-file', imageFile, fileName);
254
255 var layerIndex = 0;
256
257 $.ajax({
258 url: window.imageUploadURL,
259 type: "POST",
260 dataType: "json",
261 data: form,
262 processData: false,
263 contentType: false,
264 beforeSend: function() {
265 layerIndex = $callback('before');
266 },
267 error: function() {
268 layer.close(layerIndex);
269 $callback('error');
270 layer.msg("图片上传失败");
271 },
272 success: function(data) {
273 layer.close(layerIndex);
274 $callback('success', data);
275 if(data.errcode !== 0){
276 layer.msg(data.message);
277 }
278
279 }
280 });
281 e.preventDefault();
282 }
283 }
284 });
285}
286
287$(function () {
288 window.vueApp = new Vue({

Callers 1

markdown.jsFile · 0.85

Calls 1

parseMethod · 0.80

Tested by

no test coverage detected