add:增加渲染完成事件

This commit is contained in:
liyulin 2022-11-14 16:57:04 +08:00
parent 1b7ede22ec
commit b7367dd535
21 changed files with 172 additions and 128 deletions

File diff suppressed because one or more lines are too long

View File

@ -130,7 +130,7 @@ if (typeof window !== 'undefined') {
// Indicate to webpack that this file can be concatenated // Indicate to webpack that this file can be concatenated
/* harmony default export */ var setPublicPath = (null); /* harmony default export */ var setPublicPath = (null);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=ec5bbd9a&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=405eb28e&scoped=true&
var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"}) var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"})
} }
var staticRenderFns = [] var staticRenderFns = []
@ -152,7 +152,7 @@ function fetchDocx(src, options) {
function docx_render(data, container){ function docx_render(data, container){
if(!data){ if(!data){
container.innerHtml = '' container.innerHtml = ''
return return Promise.resolve()
} }
let blob let blob
if(data instanceof Blob){ if(data instanceof Blob){
@ -177,9 +177,9 @@ function docx_render(data, container){
name: "VueOfficeDocx", name: "VueOfficeDocx",
props: { props: {
src: [String, ArrayBuffer, Blob], src: [String, ArrayBuffer, Blob],
requestOptions:{ requestOptions: {
type: Object, type: Object,
default: ()=>({}) default: () => ({})
} }
}, },
watch: { watch: {
@ -187,21 +187,27 @@ function docx_render(data, container){
handler(val) { handler(val) {
if (val) { if (val) {
this.init() this.init()
}else{ } else {
docx.render('', this.$refs["vue-office-docx"]) docx.render('', this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
} }
} }
} }
}, },
mounted() { mounted() {
if(this.src){ if (this.src) {
this.init() this.init()
} }
}, },
methods: { methods: {
init(){ init() {
docx.getData(this.src, this.requestOptions).then(res =>{ docx.getData(this.src, this.requestOptions).then(res => {
docx.render(res, this.$refs["vue-office-docx"]) docx.render(res, this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
}).catch(e => {
this.$emit('error', e)
}) })
} }
} }
@ -321,7 +327,7 @@ var component = normalizeComponent(
staticRenderFns, staticRenderFns,
false, false,
null, null,
"ec5bbd9a", "405eb28e",
null null
) )

File diff suppressed because one or more lines are too long

View File

@ -140,7 +140,7 @@ if (typeof window !== 'undefined') {
// Indicate to webpack that this file can be concatenated // Indicate to webpack that this file can be concatenated
/* harmony default export */ var setPublicPath = (null); /* harmony default export */ var setPublicPath = (null);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=ec5bbd9a&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=405eb28e&scoped=true&
var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"}) var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"})
} }
var staticRenderFns = [] var staticRenderFns = []
@ -162,7 +162,7 @@ function fetchDocx(src, options) {
function docx_render(data, container){ function docx_render(data, container){
if(!data){ if(!data){
container.innerHtml = '' container.innerHtml = ''
return return Promise.resolve()
} }
let blob let blob
if(data instanceof Blob){ if(data instanceof Blob){
@ -187,9 +187,9 @@ function docx_render(data, container){
name: "VueOfficeDocx", name: "VueOfficeDocx",
props: { props: {
src: [String, ArrayBuffer, Blob], src: [String, ArrayBuffer, Blob],
requestOptions:{ requestOptions: {
type: Object, type: Object,
default: ()=>({}) default: () => ({})
} }
}, },
watch: { watch: {
@ -197,21 +197,27 @@ function docx_render(data, container){
handler(val) { handler(val) {
if (val) { if (val) {
this.init() this.init()
}else{ } else {
docx.render('', this.$refs["vue-office-docx"]) docx.render('', this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
} }
} }
} }
}, },
mounted() { mounted() {
if(this.src){ if (this.src) {
this.init() this.init()
} }
}, },
methods: { methods: {
init(){ init() {
docx.getData(this.src, this.requestOptions).then(res =>{ docx.getData(this.src, this.requestOptions).then(res => {
docx.render(res, this.$refs["vue-office-docx"]) docx.render(res, this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
}).catch(e => {
this.$emit('error', e)
}) })
} }
} }
@ -331,7 +337,7 @@ var component = normalizeComponent(
staticRenderFns, staticRenderFns,
false, false,
null, null,
"ec5bbd9a", "405eb28e",
null null
) )

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -74,7 +74,7 @@ if (typeof window !== 'undefined') {
// Indicate to webpack that this file can be concatenated // Indicate to webpack that this file can be concatenated
/* harmony default export */ var setPublicPath = (null); /* harmony default export */ var setPublicPath = (null);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=0bd0c824&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=4b4de15c&scoped=true&
var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()]) var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()])
} }
var staticRenderFns = [] var staticRenderFns = []
@ -103,6 +103,7 @@ const pdfjsLib = 'IWZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHQsZS
const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`; const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`;
const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`; const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
@ -147,12 +148,13 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
return return
} }
const loadingTask = window.pdfjsLib.getDocument(this.src); const loadingTask = window.pdfjsLib.getDocument(this.src);
loadingTask.promise loadingTask.promise.then((pdfDocument) => {
.then((pdfDocument) => { this.document = pdfDocument;
this.document = pdfDocument; this.numPages = pdfDocument.numPages;
this.numPages = pdfDocument.numPages; this.renderPage(1)
this.renderPage(1) }).catch((e) => {
}) this.$emit('error', e)
})
}, },
renderPage(num) { renderPage(num) {
this.document.getPage(num).then((pdfPage) => { this.document.getPage(num).then((pdfPage) => {
@ -168,12 +170,14 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
renderTask.promise.then(() => { renderTask.promise.then(() => {
if (this.numPages > num) { if (this.numPages > num) {
this.renderPage(num + 1); this.renderPage(num + 1);
} else {
this.$emit('rendered')
} }
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
} }
@ -294,7 +298,7 @@ var component = normalizeComponent(
staticRenderFns, staticRenderFns,
false, false,
null, null,
"0bd0c824", "4b4de15c",
null null
) )

View File

@ -64,7 +64,7 @@ if (typeof window !== 'undefined') {
// Indicate to webpack that this file can be concatenated // Indicate to webpack that this file can be concatenated
/* harmony default export */ var setPublicPath = (null); /* harmony default export */ var setPublicPath = (null);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=0bd0c824&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=4b4de15c&scoped=true&
var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()]) var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()])
} }
var staticRenderFns = [] var staticRenderFns = []
@ -93,6 +93,7 @@ const pdfjsLib = 'IWZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHQsZS
const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`; const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`;
const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`; const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
@ -137,12 +138,13 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
return return
} }
const loadingTask = window.pdfjsLib.getDocument(this.src); const loadingTask = window.pdfjsLib.getDocument(this.src);
loadingTask.promise loadingTask.promise.then((pdfDocument) => {
.then((pdfDocument) => { this.document = pdfDocument;
this.document = pdfDocument; this.numPages = pdfDocument.numPages;
this.numPages = pdfDocument.numPages; this.renderPage(1)
this.renderPage(1) }).catch((e) => {
}) this.$emit('error', e)
})
}, },
renderPage(num) { renderPage(num) {
this.document.getPage(num).then((pdfPage) => { this.document.getPage(num).then((pdfPage) => {
@ -158,12 +160,14 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
renderTask.promise.then(() => { renderTask.promise.then(() => {
if (this.numPages > num) { if (this.numPages > num) {
this.renderPage(num + 1); this.renderPage(num + 1);
} else {
this.$emit('rendered')
} }
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
} }
@ -284,7 +288,7 @@ var component = normalizeComponent(
staticRenderFns, staticRenderFns,
false, false,
null, null,
"0bd0c824", "4b4de15c",
null null
) )

File diff suppressed because one or more lines are too long

View File

@ -74,7 +74,7 @@ if (typeof window !== 'undefined') {
// Indicate to webpack that this file can be concatenated // Indicate to webpack that this file can be concatenated
/* harmony default export */ var setPublicPath = (null); /* harmony default export */ var setPublicPath = (null);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=0bd0c824&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=4b4de15c&scoped=true&
var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()]) var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()])
} }
var staticRenderFns = [] var staticRenderFns = []
@ -103,6 +103,7 @@ const pdfjsLib = 'IWZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHQsZS
const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`; const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`;
const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`; const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
@ -147,12 +148,13 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
return return
} }
const loadingTask = window.pdfjsLib.getDocument(this.src); const loadingTask = window.pdfjsLib.getDocument(this.src);
loadingTask.promise loadingTask.promise.then((pdfDocument) => {
.then((pdfDocument) => { this.document = pdfDocument;
this.document = pdfDocument; this.numPages = pdfDocument.numPages;
this.numPages = pdfDocument.numPages; this.renderPage(1)
this.renderPage(1) }).catch((e) => {
}) this.$emit('error', e)
})
}, },
renderPage(num) { renderPage(num) {
this.document.getPage(num).then((pdfPage) => { this.document.getPage(num).then((pdfPage) => {
@ -168,12 +170,14 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
renderTask.promise.then(() => { renderTask.promise.then(() => {
if (this.numPages > num) { if (this.numPages > num) {
this.renderPage(num + 1); this.renderPage(num + 1);
} else {
this.$emit('rendered')
} }
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
} }
@ -294,7 +298,7 @@ var component = normalizeComponent(
staticRenderFns, staticRenderFns,
false, false,
null, null,
"0bd0c824", "4b4de15c",
null null
) )

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -132,7 +132,7 @@ if (typeof window !== 'undefined') {
// Indicate to webpack that this file can be concatenated // Indicate to webpack that this file can be concatenated
/* harmony default export */ var setPublicPath = (null); /* harmony default export */ var setPublicPath = (null);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=ec5bbd9a&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=405eb28e&scoped=true&
var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"}) var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"})
} }
var staticRenderFns = [] var staticRenderFns = []
@ -154,7 +154,7 @@ function fetchDocx(src, options) {
function docx_render(data, container){ function docx_render(data, container){
if(!data){ if(!data){
container.innerHtml = '' container.innerHtml = ''
return return Promise.resolve()
} }
let blob let blob
if(data instanceof Blob){ if(data instanceof Blob){
@ -179,9 +179,9 @@ function docx_render(data, container){
name: "VueOfficeDocx", name: "VueOfficeDocx",
props: { props: {
src: [String, ArrayBuffer, Blob], src: [String, ArrayBuffer, Blob],
requestOptions:{ requestOptions: {
type: Object, type: Object,
default: ()=>({}) default: () => ({})
} }
}, },
watch: { watch: {
@ -189,21 +189,27 @@ function docx_render(data, container){
handler(val) { handler(val) {
if (val) { if (val) {
this.init() this.init()
}else{ } else {
docx.render('', this.$refs["vue-office-docx"]) docx.render('', this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
} }
} }
} }
}, },
mounted() { mounted() {
if(this.src){ if (this.src) {
this.init() this.init()
} }
}, },
methods: { methods: {
init(){ init() {
docx.getData(this.src, this.requestOptions).then(res =>{ docx.getData(this.src, this.requestOptions).then(res => {
docx.render(res, this.$refs["vue-office-docx"]) docx.render(res, this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
}).catch(e => {
this.$emit('error', e)
}) })
} }
} }
@ -323,7 +329,7 @@ var component = normalizeComponent(
staticRenderFns, staticRenderFns,
false, false,
null, null,
"ec5bbd9a", "405eb28e",
null null
) )
@ -337,10 +343,10 @@ main.install = function (Vue) {
} }
/* harmony default export */ var packages_docx = (main); /* harmony default export */ var packages_docx = (main);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=0bd0c824&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=4b4de15c&scoped=true&
var mainvue_type_template_id_0bd0c824_scoped_true_render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()]) var mainvue_type_template_id_4b4de15c_scoped_true_render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()])
} }
var mainvue_type_template_id_0bd0c824_scoped_true_staticRenderFns = [] var mainvue_type_template_id_4b4de15c_scoped_true_staticRenderFns = []
;// CONCATENATED MODULE: ./packages/pdf/src/worker.js ;// CONCATENATED MODULE: ./packages/pdf/src/worker.js
@ -366,6 +372,7 @@ const pdfjsLib = 'IWZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHQsZS
const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`; const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`;
const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`; const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
@ -410,12 +417,13 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
return return
} }
const loadingTask = window.pdfjsLib.getDocument(this.src); const loadingTask = window.pdfjsLib.getDocument(this.src);
loadingTask.promise loadingTask.promise.then((pdfDocument) => {
.then((pdfDocument) => { this.document = pdfDocument;
this.document = pdfDocument; this.numPages = pdfDocument.numPages;
this.numPages = pdfDocument.numPages; this.renderPage(1)
this.renderPage(1) }).catch((e) => {
}) this.$emit('error', e)
})
}, },
renderPage(num) { renderPage(num) {
this.document.getPage(num).then((pdfPage) => { this.document.getPage(num).then((pdfPage) => {
@ -431,12 +439,14 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
renderTask.promise.then(() => { renderTask.promise.then(() => {
if (this.numPages > num) { if (this.numPages > num) {
this.renderPage(num + 1); this.renderPage(num + 1);
} else {
this.$emit('rendered')
} }
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
} }
@ -455,11 +465,11 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
; ;
var main_component = normalizeComponent( var main_component = normalizeComponent(
packages_pdf_src_mainvue_type_script_lang_js_, packages_pdf_src_mainvue_type_script_lang_js_,
mainvue_type_template_id_0bd0c824_scoped_true_render, mainvue_type_template_id_4b4de15c_scoped_true_render,
mainvue_type_template_id_0bd0c824_scoped_true_staticRenderFns, mainvue_type_template_id_4b4de15c_scoped_true_staticRenderFns,
false, false,
null, null,
"0bd0c824", "4b4de15c",
null null
) )

File diff suppressed because one or more lines are too long

View File

@ -142,7 +142,7 @@ if (typeof window !== 'undefined') {
// Indicate to webpack that this file can be concatenated // Indicate to webpack that this file can be concatenated
/* harmony default export */ var setPublicPath = (null); /* harmony default export */ var setPublicPath = (null);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=ec5bbd9a&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/docx/src/main.vue?vue&type=template&id=405eb28e&scoped=true&
var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"}) var render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-docx",staticClass:"vue-office-docx"})
} }
var staticRenderFns = [] var staticRenderFns = []
@ -164,7 +164,7 @@ function fetchDocx(src, options) {
function docx_render(data, container){ function docx_render(data, container){
if(!data){ if(!data){
container.innerHtml = '' container.innerHtml = ''
return return Promise.resolve()
} }
let blob let blob
if(data instanceof Blob){ if(data instanceof Blob){
@ -189,9 +189,9 @@ function docx_render(data, container){
name: "VueOfficeDocx", name: "VueOfficeDocx",
props: { props: {
src: [String, ArrayBuffer, Blob], src: [String, ArrayBuffer, Blob],
requestOptions:{ requestOptions: {
type: Object, type: Object,
default: ()=>({}) default: () => ({})
} }
}, },
watch: { watch: {
@ -199,21 +199,27 @@ function docx_render(data, container){
handler(val) { handler(val) {
if (val) { if (val) {
this.init() this.init()
}else{ } else {
docx.render('', this.$refs["vue-office-docx"]) docx.render('', this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
} }
} }
} }
}, },
mounted() { mounted() {
if(this.src){ if (this.src) {
this.init() this.init()
} }
}, },
methods: { methods: {
init(){ init() {
docx.getData(this.src, this.requestOptions).then(res =>{ docx.getData(this.src, this.requestOptions).then(res => {
docx.render(res, this.$refs["vue-office-docx"]) docx.render(res, this.$refs["vue-office-docx"]).then(() => {
this.$emit('rendered')
})
}).catch(e => {
this.$emit('error', e)
}) })
} }
} }
@ -333,7 +339,7 @@ var component = normalizeComponent(
staticRenderFns, staticRenderFns,
false, false,
null, null,
"ec5bbd9a", "405eb28e",
null null
) )
@ -347,10 +353,10 @@ main.install = function (Vue) {
} }
/* harmony default export */ var packages_docx = (main); /* harmony default export */ var packages_docx = (main);
;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=0bd0c824&scoped=true& ;// CONCATENATED MODULE: ./node_modules/_vue-loader@15.10.0@vue-loader/lib/loaders/templateLoader.js??ruleSet[1].rules[3]!./node_modules/_vue-loader@15.10.0@vue-loader/lib/index.js??vue-loader-options!./packages/pdf/src/main.vue?vue&type=template&id=4b4de15c&scoped=true&
var mainvue_type_template_id_0bd0c824_scoped_true_render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()]) var mainvue_type_template_id_4b4de15c_scoped_true_render = function render(){var _vm=this,_c=_vm._self._c;return _c('div',{ref:"vue-office-pdf",staticClass:"vue-office-pdf"},[(_vm.numPages)?_c('div',{staticClass:"vue-office-pdf-wrapper",staticStyle:{"background":"gray","padding":"30px 0","position":"relative"}},_vm._l((_vm.numPages),function(page){return _c('canvas',{key:page,ref:'canvas'+ page,refInFor:true})}),0):_vm._e()])
} }
var mainvue_type_template_id_0bd0c824_scoped_true_staticRenderFns = [] var mainvue_type_template_id_4b4de15c_scoped_true_staticRenderFns = []
;// CONCATENATED MODULE: ./packages/pdf/src/worker.js ;// CONCATENATED MODULE: ./packages/pdf/src/worker.js
@ -376,6 +382,7 @@ const pdfjsLib = 'IWZ1bmN0aW9uIHdlYnBhY2tVbml2ZXJzYWxNb2R1bGVEZWZpbml0aW9uKHQsZS
const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`; const pdfJsLibSrc = `data:text/javascript;base64,${pdfjsLib}`;
const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`; const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
@ -420,12 +427,13 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
return return
} }
const loadingTask = window.pdfjsLib.getDocument(this.src); const loadingTask = window.pdfjsLib.getDocument(this.src);
loadingTask.promise loadingTask.promise.then((pdfDocument) => {
.then((pdfDocument) => { this.document = pdfDocument;
this.document = pdfDocument; this.numPages = pdfDocument.numPages;
this.numPages = pdfDocument.numPages; this.renderPage(1)
this.renderPage(1) }).catch((e) => {
}) this.$emit('error', e)
})
}, },
renderPage(num) { renderPage(num) {
this.document.getPage(num).then((pdfPage) => { this.document.getPage(num).then((pdfPage) => {
@ -441,12 +449,14 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
renderTask.promise.then(() => { renderTask.promise.then(() => {
if (this.numPages > num) { if (this.numPages > num) {
this.renderPage(num + 1); this.renderPage(num + 1);
} else {
this.$emit('rendered')
} }
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
}).catch(() => { }).catch((e) => {
this.$emit('error', e)
}); });
} }
@ -465,11 +475,11 @@ const PdfJsWorkerSrc = `data:text/javascript;base64,${worker}`;
; ;
var main_component = normalizeComponent( var main_component = normalizeComponent(
packages_pdf_src_mainvue_type_script_lang_js_, packages_pdf_src_mainvue_type_script_lang_js_,
mainvue_type_template_id_0bd0c824_scoped_true_render, mainvue_type_template_id_4b4de15c_scoped_true_render,
mainvue_type_template_id_0bd0c824_scoped_true_staticRenderFns, mainvue_type_template_id_4b4de15c_scoped_true_staticRenderFns,
false, false,
null, null,
"0bd0c824", "4b4de15c",
null null
) )

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long