neditor本地上传视频
上一篇讲了neditor上传图片,这篇来说说上传视频的修改,上传视频怕是不能简简单单的修改neditor.service.js,还需要修改video.js中的一系列方法。可以看看neditor.service.js中上传图片的那几个自带的自定义方法,上传视频也是同理的!
开始:
1、首先neditor.config.js中toolbars工具栏加上视频图标显示:insertvideo、
videoActionName: “uploadvideo”
2、修改neditor.service.js自定义上传接口中增加判断action == ‘uploadvideo’,方便理解再次贴上一张图
这时你的界面应该有上传视频的弹框了:
接下来修改video.js。
3、找到下列方法添加代码:
editor.getOpt("videoUploadService")(_this, editor).setUploadData(file);
4、找到下列方法添加代码:
editor.getOpt("videoUploadService")(_this, editor).setUploaderOptions(uploader);
5、注释原来的代码添加代码
editor.getOpt("videoUploadService")(_this, editor).setFormData(file, data, header);
6、注释原来的if判断代码,添加代码:
if (editor.getOpt("videoUploadService")(_this, editor).getResponseSuccess(ret)) {
_this.fileList.push(ret);
$file.append('<span class="success"></span>');
}
7、找到getQueueCount方法,在下方添加代码:
getInsertList: function () {
var i, data, list = [],
align = $("#upload_alignment .focus").attr("name"),
prefix = editor.getOpt('imageUrlPrefix'),
videoSrcField = editor.getOpt("imageUploadService")(this, editor).videoSrcField || 'url',
videoSrc = '',
videoSrcFieldKeys = videoSrcField.split('.');
for (i = 0; i < this.fileList.length; i++) {
data = this.fileList[i];
if(videoSrcFieldKeys.length > 1) {
function setVideoSrc(obj, keys, index) {
obj = obj[keys[index]];
if (index < keys.length - 1) {
setVideoSrc(obj, keys, index += 1)
} else {
videoSrc = obj;
}
}
setVideoSrc(data, videoSrcFieldKeys, 0);
} else {
videoSrc = data[videoSrcField];
}
list.push({
src: prefix + videoSrc,
_src: prefix + videoSrc,
alt: data.original,
floatStyle: align
});
}
return list;
}
8、找到下列方法、添加代码:
uploadVideoList = uploadFile.getInsertList();
好大功告成