mirror of
https://github.com/501351981/vue-office.git
synced 2025-06-15 07:00:00 +08:00
change: excel增加beforeTransformData钩子函数、pdf支持requestOptions
This commit is contained in:
parent
07f7966252
commit
afea00926e
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@js-preview/excel",
|
||||
"type" :"module",
|
||||
"version": "1.6.2",
|
||||
"version": "1.6.3",
|
||||
"description": "",
|
||||
"main": "lib/index.js",
|
||||
"files": [
|
||||
|
@ -96,6 +96,9 @@ class JsExcelPreview {
|
||||
if (!workbook._worksheets || workbook._worksheets.length === 0) {
|
||||
throw new Error('未获取到数据,可能文件格式不正确或文件已损坏');
|
||||
}
|
||||
if(this.options.beforeTransformData && typeof this.options.beforeTransformData === 'function' ){
|
||||
workbook = this.options.beforeTransformData(workbook);
|
||||
}
|
||||
let {workbookData, medias, workbookSource} = transferExcelToSpreadSheet(workbook, this.options);
|
||||
if(this.options.transformData && typeof this.options.transformData === 'function' ){
|
||||
workbookData = this.options.transformData(workbookData);
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@js-preview/pdf",
|
||||
"type" :"module",
|
||||
"version": "1.6.2",
|
||||
"version": "1.6.3",
|
||||
"description": "",
|
||||
"main": "lib/index.js",
|
||||
"files": [
|
||||
|
@ -57,6 +57,8 @@ class JsPdfPreview{
|
||||
getDocument(src){
|
||||
const loadingTask = window.pdfjsLib.getDocument({
|
||||
url: getUrl(src),
|
||||
httpHeaders: this.requestOptions && this.requestOptions.headers,
|
||||
withCredentials: this.requestOptions && this.requestOptions.withCredentials,
|
||||
cMapUrl: `${this.options.staticFileUrl.endsWith('/') ? this.options.staticFileUrl : this.options.staticFileUrl + '/'}cmaps/`,
|
||||
cMapPacked: true,
|
||||
enableXfa: true,
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vue-office/excel",
|
||||
"version": "1.6.1",
|
||||
"version": "1.6.3",
|
||||
"description": "",
|
||||
"main": "lib/index.js",
|
||||
"files": [
|
||||
|
@ -45,6 +45,9 @@ export default defineComponent({
|
||||
if (!workbook._worksheets || workbook._worksheets.length === 0) {
|
||||
throw new Error('未获取到数据,可能文件格式不正确或文件已损坏');
|
||||
}
|
||||
if(props.options.beforeTransformData && typeof props.options.beforeTransformData === 'function' ){
|
||||
workbook = props.options.beforeTransformData(workbook);
|
||||
}
|
||||
let {workbookData, medias, workbookSource} = transferExcelToSpreadSheet(workbook, {...defaultOptions, ...props.options});
|
||||
if(props.options.transformData && typeof props.options.transformData === 'function' ){
|
||||
workbookData = props.options.transformData(workbookData);
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@vue-office/pdf",
|
||||
"version": "1.6.2",
|
||||
"version": "1.6.3",
|
||||
"description": "",
|
||||
"main": "lib/index.js",
|
||||
"files": [
|
||||
|
@ -68,6 +68,8 @@ export default defineComponent({
|
||||
}
|
||||
loadingTask = window.pdfjsLib.getDocument({
|
||||
url: getUrl(props.src),
|
||||
httpHeaders: props.requestOptions && props.requestOptions.headers,
|
||||
withCredentials: props.requestOptions && props.requestOptions.withCredentials,
|
||||
cMapUrl: `${props.staticFileUrl.endsWith('/') ? props.staticFileUrl : props.staticFileUrl + '/'}cmaps/`,
|
||||
cMapPacked: true,
|
||||
enableXfa: true,
|
||||
|
@ -16,6 +16,11 @@ const defaultSrc = location.origin +
|
||||
+ 'static/test-files/test.docx';
|
||||
|
||||
const docxRef = ref();
|
||||
const requestOptions = {
|
||||
headers: {
|
||||
'component-name': 'VueOfficeDocx'
|
||||
}
|
||||
};
|
||||
|
||||
// setTimeout(()=>{
|
||||
// console.log( docxRef.value.download());
|
||||
@ -32,6 +37,7 @@ const docxRef = ref();
|
||||
<VueOfficeDocx
|
||||
ref="docxRef"
|
||||
:src="slotProps.src"
|
||||
:request-options="requestOptions"
|
||||
style="flex: 1;height: 0"
|
||||
@rendered="onRendered"
|
||||
@error="onError"
|
||||
|
@ -12,6 +12,11 @@ function onError(e){
|
||||
useLoading.hideLoading();
|
||||
}
|
||||
|
||||
function beforeTransformData(data){
|
||||
console.log('beforeTransformData', data);
|
||||
return data;
|
||||
}
|
||||
|
||||
function transformData(data){
|
||||
console.log('transformData', data);
|
||||
return data;
|
||||
@ -37,7 +42,7 @@ const docxRef = ref();
|
||||
<VueOfficeExcel
|
||||
ref="docxRef"
|
||||
:src="slotProps.src"
|
||||
:options="{transformData}"
|
||||
:options="{beforeTransformData, transformData}"
|
||||
style="flex: 1;height: 0"
|
||||
v-loading="true"
|
||||
@rendered="onRendered"
|
||||
|
@ -16,6 +16,12 @@ const defaultSrc = location.origin +
|
||||
const docxRef = ref();
|
||||
|
||||
window.docxRef = docxRef;
|
||||
|
||||
const requestOptions = {
|
||||
headers: {
|
||||
'component-name': 'VueOfficePdf'
|
||||
}
|
||||
};
|
||||
// setTimeout(()=>{
|
||||
// console.log( docxRef.value.download());
|
||||
// }, 2000);
|
||||
@ -33,6 +39,7 @@ window.docxRef = docxRef;
|
||||
:src="slotProps.src"
|
||||
style="flex: 1;height: 0"
|
||||
:options="{lazy:true}"
|
||||
:request-options="requestOptions"
|
||||
@rendered="onRendered"
|
||||
@error="onError"
|
||||
>
|
||||
|
@ -30,7 +30,10 @@ widthOffset:在默认渲染的列表宽度上再加 Npx宽
|
||||
|
||||
heightOffset:在默认渲染的列表高度上再加 Npx高
|
||||
|
||||
transformData:在预览之前可以通过transformData对即将渲染数据及样式进行修改
|
||||
beforeTransformData: 底层通过exceljs获取excel文件内容,通过该钩子函数,可以对获取的excel文件内容进行修改,比如某个单元格的数据显示不正确,可以在此自行修改每个单元格的value值。
|
||||
|
||||
|
||||
transformData:将获取到的excel数据进行处理之后且渲染到页面之前,可通过transformData对即将渲染的数据及样式进行修改,此时每个单元格的text值就是即将渲染到页面上的内容。
|
||||
|
||||
```javascript
|
||||
{
|
||||
@ -38,8 +41,12 @@ transformData:在预览之前可以通过transformData对即将渲染数据及
|
||||
"minRowLength": 100,
|
||||
"widthOffset": 10, //在默认渲染的列表宽度上再加10px宽
|
||||
"heightOffset": 10, //在默认渲染的列表高度上再加10px高
|
||||
"beforeTransformData": function (workbookData){
|
||||
//修改workbookData,可以打印出来看看数据格式
|
||||
return workbookData;
|
||||
},
|
||||
"transformData": function (workbookData){
|
||||
//修改workbookData
|
||||
//修改workbookData,可以打印出来看看数据格式
|
||||
return workbookData;
|
||||
}
|
||||
}
|
||||
|
1
examples/dist/assets/DocxDemo-8c364088.js
vendored
Normal file
1
examples/dist/assets/DocxDemo-8c364088.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{d as r}from"./docx-19f6a6c1.js";import{d as p}from"./url-de9b02cf.js";import{d as x,_ as l,r as _,o as h,w as v,a as m,c as g,b as D,e as w,f as y,g as O,u as B}from"./index-5d373288.js";import{P as R,u}from"./PreviewWrapper-a5ea54f2.js";import"./_commonjs-dynamic-modules-302442b1.js";typeof window.setImmediate>"u"&&(window.setImmediate=function(e,...o){setTimeout(()=>e(o))});const $=x({name:"VueOfficeDocx",props:{src:[String,ArrayBuffer,Blob],requestOptions:{type:Object,default:()=>({})},options:{type:Object,default:()=>({})}},emits:["rendered","error"],setup(e,{emit:o}){const n=_(null);let c=null;function a(){let t=n.value;r.getData(e.src,e.requestOptions).then(async i=>{c=await r.getBlob(i),r.render(c,t,e.options).then(()=>{o("rendered")}).catch(f=>{r.render("",t,e.options),o("error",f)})}).catch(i=>{r.render("",t,e.options),o("error",i)})}h(()=>{e.src&&a()}),v(()=>e.src,()=>{e.src?a():r.render("",n.value,e.options).then(()=>{o("rendered")})});function s(t){p(t||`vue-office-docx-${new Date().getTime()}.docx`,c)}return{rootRef:n,save:s}}}),b={class:"vue-office-docx"},V={class:"vue-office-docx-main",ref:"rootRef"};function k(e,o,n,c,a,s){return m(),g("div",b,[D("div",V,null,512)])}const d=l($,[["render",k]]);d.install=function(e){e.component(d.name,d)};const q={__name:"DocxDemo",setup(e){function o(){u.hideLoading()}function n(t){console.log("出差",t),u.hideLoading()}const c=location.origin+(location.pathname+"/").replace("//","/")+"static/test-files/test.docx",a=_(),s={headers:{"component-name":"VueOfficeDocx"}};return(t,i)=>(m(),w(R,{accept:".docx",placeholder:"请输入docx文件地址","default-src":c},{default:y(f=>[O(B(d),{ref_key:"docxRef",ref:a,src:f.src,"request-options":s,style:{flex:"1",height:"0"},onRendered:o,onError:n},null,8,["src"])]),_:1}))}},N=l(q,[["__scopeId","data-v-844ea5ef"]]);export{N as default};
|
1
examples/dist/assets/DocxDemo-9ea79e80.css
vendored
Normal file
1
examples/dist/assets/DocxDemo-9ea79e80.css
vendored
Normal file
@ -0,0 +1 @@
|
||||
.vue-office-docx{height:100%;overflow-y:auto}.vue-office-docx .docx-wrapper>section.docx{margin-bottom:5px}@media screen and (max-width: 800px){.vue-office-docx .docx-wrapper{padding:10px}.vue-office-docx .docx-wrapper>section.docx{padding:10px!important;width:100%!important}}.operate-area[data-v-844ea5ef]{display:flex;margin:10px;align-items:center}
|
1
examples/dist/assets/DocxDemo-dd2985dd.js
vendored
Normal file
1
examples/dist/assets/DocxDemo-dd2985dd.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{d as r}from"./docx-d30f8993.js";import{d as p}from"./url-de9b02cf.js";import{d as x,_ as l,r as _,o as h,w as v,a as m,c as g,b as D,e as w,f as y,g as O,u as B}from"./index-58cbfcf0.js";import{P as R,u}from"./PreviewWrapper-1c0384a3.js";import"./_commonjs-dynamic-modules-302442b1.js";typeof window.setImmediate>"u"&&(window.setImmediate=function(e,...o){setTimeout(()=>e(o))});const $=x({name:"VueOfficeDocx",props:{src:[String,ArrayBuffer,Blob],requestOptions:{type:Object,default:()=>({})},options:{type:Object,default:()=>({})}},emits:["rendered","error"],setup(e,{emit:o}){const n=_(null);let c=null;function a(){let t=n.value;r.getData(e.src,e.requestOptions).then(async i=>{c=await r.getBlob(i),r.render(c,t,e.options).then(()=>{o("rendered")}).catch(f=>{r.render("",t,e.options),o("error",f)})}).catch(i=>{r.render("",t,e.options),o("error",i)})}h(()=>{e.src&&a()}),v(()=>e.src,()=>{e.src?a():r.render("",n.value,e.options).then(()=>{o("rendered")})});function s(t){p(t||`vue-office-docx-${new Date().getTime()}.docx`,c)}return{rootRef:n,save:s}}}),b={class:"vue-office-docx"},V={class:"vue-office-docx-main",ref:"rootRef"};function k(e,o,n,c,a,s){return m(),g("div",b,[D("div",V,null,512)])}const d=l($,[["render",k]]);d.install=function(e){e.component(d.name,d)};const q={__name:"DocxDemo",setup(e){function o(){u.hideLoading()}function n(t){console.log("出差",t),u.hideLoading()}const c=location.origin+(location.pathname+"/").replace("//","/")+"static/test-files/test.docx",a=_(),s={headers:{"component-name":"VueOfficeDocx"}};return(t,i)=>(m(),w(R,{accept:".docx",placeholder:"请输入docx文件地址","default-src":c},{default:y(f=>[O(B(d),{ref_key:"docxRef",ref:a,src:f.src,"request-options":s,style:{flex:"1",height:"0"},onRendered:o,onError:n},null,8,["src"])]),_:1}))}},N=l(q,[["__scopeId","data-v-844ea5ef"]]);export{N as default};
|
1
examples/dist/assets/ExcelDemo-291862f2.js
vendored
Normal file
1
examples/dist/assets/ExcelDemo-291862f2.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{l as C,r as R,S as B,a as x,g,b as $,t as L,c as O}from"./hack-f62f946f.js";import{d as q}from"./url-de9b02cf.js";import{d as F,_ as V,r as w,o as W,n as j,h as I,w as M,a as y,c as N,b as P,i as A,e as H,f as U,j as z,g as G,u as J}from"./index-58cbfcf0.js";import{P as K,u as k}from"./PreviewWrapper-1c0384a3.js";import"./_commonjs-dynamic-modules-302442b1.js";const T={minColLength:20},Q=F({name:"VueOfficeExcel",props:{src:[String,ArrayBuffer,Blob],requestOptions:{type:Object,default:()=>({})},options:{type:Object,default:()=>({...T})}},emits:["rendered","error"],setup(e,{emit:d}){const l=w(null),r=w(null);let s={_worksheets:[]},c=[],i=0,o=null,t=null,f=null,m=null;function p(u){m=u,$(u).then(n=>{if(!n._worksheets||n._worksheets.length===0)throw new Error("未获取到数据,可能文件格式不正确或文件已损坏");e.options.beforeTransformData&&typeof e.options.beforeTransformData=="function"&&(n=e.options.beforeTransformData(n));let{workbookData:h,medias:b,workbookSource:a}=L(n,{...T,...e.options});e.options.transformData&&typeof e.options.transformData=="function"&&(h=e.options.transformData(h)),c=b,s=a,f=null,i=0,O(),t.loadData(h),x(o,c,s._worksheets[i],f,e.options),d("rendered")}).catch(n=>{console.warn(n),c=[],s={_worksheets:[]},O(),t&&t.loadData({}),d("error",n)})}const v=C.debounce(R,200).bind(this,r.value),D=new MutationObserver(v),E={attributes:!0,childList:!0,subtree:!0};W(()=>{j(()=>{D.observe(r.value,E),v(r),t=new B(r.value,{mode:"read",showToolbar:!1,showContextmenu:e.options.showContextmenu||!1,view:{height:()=>l.value&&l.value.clientHeight||300,width:()=>l.value&&l.value.clientWidth||1200},row:{height:24,len:100},col:{len:26,width:80,indexWidth:60,minWidth:60},autoFocus:!1}).loadData({});let u=t.bottombar.swapFunc;t.bottombar.swapFunc=function(a){u.call(t.bottombar,a),i=a,setTimeout(()=>{t.reRender(),x(o,c,s._worksheets[i],f,e.options)})};let n=t.sheet.editor.clear;t.sheet.editor.clear=function(...a){n.apply(t.sheet.editor,a),setTimeout(()=>{x(o,c,s._worksheets[i],f,e.options)})};let h=t.sheet.editor.setOffset;t.sheet.editor.setOffset=function(...a){h.apply(t.sheet.editor,a),f=a[0],x(o,c,s._worksheets[i],f,e.options)},o=r.value.querySelector("canvas").getContext("2d"),e.src&&g(e.src,e.requestOptions).then(p).catch(a=>{t.loadData({}),d("error",a)})})}),I(()=>{D.disconnect(),t=null}),M(()=>e.src,()=>{e.src?g(e.src,e.requestOptions).then(p).catch(u=>{t.loadData({}),d("error",u)}):t.loadData({})});function S(u){q(u||`vue-office-excel-${new Date().getTime()}.xlsx`,m)}return{wrapperRef:l,rootRef:r,save:S}}}),X={class:"vue-office-excel",ref:"wrapperRef"},Y={class:"vue-office-excel-main",ref:"rootRef"};function Z(e,d,l,r,s,c){return y(),N("div",X,[P("div",Y,null,512)],512)}const _=V(Q,[["render",Z]]);_.install=function(e){e.component(_.name,_)};const re={__name:"ExcelDemo",setup(e){function d(){k.hideLoading()}function l(o){console.log("出差",o),k.hideLoading()}function r(o){return console.log("beforeTransformData",o),o}function s(o){return console.log("transformData",o),o}const c=location.origin+(location.pathname+"/").replace("//","/")+"static/test-files/test.xlsx",i=w();return(o,t)=>{const f=A("loading");return y(),H(K,{accept:".xlsx",placeholder:"请输入xlsx文件地址","default-src":c},{default:U(m=>[z(G(J(_),{ref_key:"docxRef",ref:i,src:m.src,options:{beforeTransformData:r,transformData:s},style:{flex:"1",height:"0"},onRendered:d,onError:l},null,8,["src","options"]),[[f,!0]])]),_:1})}}};export{re as default};
|
1
examples/dist/assets/ExcelDemo-426f8ab1.js
vendored
Normal file
1
examples/dist/assets/ExcelDemo-426f8ab1.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{l as C,r as R,S as B,a as x,g,b as $,t as L,c as O}from"./hack-67811302.js";import{d as q}from"./url-de9b02cf.js";import{d as F,_ as V,r as w,o as W,n as j,h as I,w as M,a as y,c as N,b as P,i as A,e as H,f as U,j as z,g as G,u as J}from"./index-5d373288.js";import{P as K,u as k}from"./PreviewWrapper-a5ea54f2.js";import"./_commonjs-dynamic-modules-302442b1.js";const T={minColLength:20},Q=F({name:"VueOfficeExcel",props:{src:[String,ArrayBuffer,Blob],requestOptions:{type:Object,default:()=>({})},options:{type:Object,default:()=>({...T})}},emits:["rendered","error"],setup(e,{emit:d}){const l=w(null),r=w(null);let s={_worksheets:[]},c=[],i=0,o=null,t=null,f=null,m=null;function p(u){m=u,$(u).then(n=>{if(!n._worksheets||n._worksheets.length===0)throw new Error("未获取到数据,可能文件格式不正确或文件已损坏");e.options.beforeTransformData&&typeof e.options.beforeTransformData=="function"&&(n=e.options.beforeTransformData(n));let{workbookData:h,medias:b,workbookSource:a}=L(n,{...T,...e.options});e.options.transformData&&typeof e.options.transformData=="function"&&(h=e.options.transformData(h)),c=b,s=a,f=null,i=0,O(),t.loadData(h),x(o,c,s._worksheets[i],f,e.options),d("rendered")}).catch(n=>{console.warn(n),c=[],s={_worksheets:[]},O(),t&&t.loadData({}),d("error",n)})}const v=C.debounce(R,200).bind(this,r.value),D=new MutationObserver(v),E={attributes:!0,childList:!0,subtree:!0};W(()=>{j(()=>{D.observe(r.value,E),v(r),t=new B(r.value,{mode:"read",showToolbar:!1,showContextmenu:e.options.showContextmenu||!1,view:{height:()=>l.value&&l.value.clientHeight||300,width:()=>l.value&&l.value.clientWidth||1200},row:{height:24,len:100},col:{len:26,width:80,indexWidth:60,minWidth:60},autoFocus:!1}).loadData({});let u=t.bottombar.swapFunc;t.bottombar.swapFunc=function(a){u.call(t.bottombar,a),i=a,setTimeout(()=>{t.reRender(),x(o,c,s._worksheets[i],f,e.options)})};let n=t.sheet.editor.clear;t.sheet.editor.clear=function(...a){n.apply(t.sheet.editor,a),setTimeout(()=>{x(o,c,s._worksheets[i],f,e.options)})};let h=t.sheet.editor.setOffset;t.sheet.editor.setOffset=function(...a){h.apply(t.sheet.editor,a),f=a[0],x(o,c,s._worksheets[i],f,e.options)},o=r.value.querySelector("canvas").getContext("2d"),e.src&&g(e.src,e.requestOptions).then(p).catch(a=>{t.loadData({}),d("error",a)})})}),I(()=>{D.disconnect(),t=null}),M(()=>e.src,()=>{e.src?g(e.src,e.requestOptions).then(p).catch(u=>{t.loadData({}),d("error",u)}):t.loadData({})});function S(u){q(u||`vue-office-excel-${new Date().getTime()}.xlsx`,m)}return{wrapperRef:l,rootRef:r,save:S}}}),X={class:"vue-office-excel",ref:"wrapperRef"},Y={class:"vue-office-excel-main",ref:"rootRef"};function Z(e,d,l,r,s,c){return y(),N("div",X,[P("div",Y,null,512)],512)}const _=V(Q,[["render",Z]]);_.install=function(e){e.component(_.name,_)};const re={__name:"ExcelDemo",setup(e){function d(){k.hideLoading()}function l(o){console.log("出差",o),k.hideLoading()}function r(o){return console.log("beforeTransformData",o),o}function s(o){return console.log("transformData",o),o}const c=location.origin+(location.pathname+"/").replace("//","/")+"static/test-files/test.xlsx",i=w();return(o,t)=>{const f=A("loading");return y(),H(K,{accept:".xlsx",placeholder:"请输入xlsx文件地址","default-src":c},{default:U(m=>[z(G(J(_),{ref_key:"docxRef",ref:i,src:m.src,options:{beforeTransformData:r,transformData:s},style:{flex:"1",height:"0"},onRendered:d,onError:l},null,8,["src","options"]),[[f,!0]])]),_:1})}}};export{re as default};
|
1
examples/dist/assets/JsDocxDemo-0aff0a60.js
vendored
Normal file
1
examples/dist/assets/JsDocxDemo-0aff0a60.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
var p=Object.defineProperty;var c=(i,e,t)=>e in i?p(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var n=(i,e,t)=>(c(i,typeof e!="symbol"?e+"":e,t),t);import{d as r}from"./docx-19f6a6c1.js";import{d as l}from"./url-de9b02cf.js";import{r as h,o as d,a as u,c as m}from"./index-5d373288.js";import"./_commonjs-dynamic-modules-302442b1.js";typeof window.setImmediate>"u"&&(window.setImmediate=function(i,...e){setTimeout(()=>i(e))});class w{constructor(e,t={},s={}){n(this,"container",null);n(this,"wrapper",null);n(this,"wrapperMain",null);n(this,"options",{});n(this,"requestOptions",{});n(this,"fileData",null);this.container=e,this.options=t,this.requestOptions=s,this.createWrapper()}createWrapper(){this.wrapper=document.createElement("div"),this.wrapper.className="vue-office-docx",this.wrapperMain=document.createElement("div"),this.wrapperMain.className="vue-office-docx-main",this.wrapper.appendChild(this.wrapperMain),this.container.appendChild(this.wrapper)}setOptions(e){this.options=e}setRequestOptions(e){this.requestOptions=e}preview(e){return new Promise((t,s)=>{r.getData(e,this.requestOptions).then(async o=>{this.fileData=await r.getBlob(o),r.render(this.fileData,this.wrapperMain,this.options).then(()=>{t()}).catch(a=>{r.render("",this.wrapperMain,this.options),s(a)})}).catch(o=>{r.render("",this.wrapperMain,this.options),s(o)})})}save(e){l(e||`js-preview-docx-${new Date().getTime()}.docx`,this.fileData)}destroy(){this.container.removeChild(this.wrapper),this.container=null,this.wrapper=null,this.wrapperMain=null,this.options=null,this.requestOptions=null}}function f(i,e,t){return new w(i,e,t)}const v={init:f};const q={__name:"JsDocxDemo",setup(i){const e=h(null);return d(()=>{let t=v.init(e.value);t.preview("/vue-office/examples/dist/static/test-files/test.docx").then(s=>{console.log("docx preview done"),setTimeout(()=>{t.preview("/vue-office/examples/dist/static/test-files/test2.docx")},3e3)}).catch(s=>{console.log("err",s)})}),(t,s)=>(u(),m("div",{ref_key:"dom",ref:e},null,512))}};export{q as default};
|
1
examples/dist/assets/JsDocxDemo-28b06ad6.js
vendored
Normal file
1
examples/dist/assets/JsDocxDemo-28b06ad6.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
var p=Object.defineProperty;var c=(i,e,t)=>e in i?p(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t;var n=(i,e,t)=>(c(i,typeof e!="symbol"?e+"":e,t),t);import{d as r}from"./docx-d30f8993.js";import{d as l}from"./url-de9b02cf.js";import{r as h,o as d,a as u,c as m}from"./index-58cbfcf0.js";import"./_commonjs-dynamic-modules-302442b1.js";typeof window.setImmediate>"u"&&(window.setImmediate=function(i,...e){setTimeout(()=>i(e))});class w{constructor(e,t={},s={}){n(this,"container",null);n(this,"wrapper",null);n(this,"wrapperMain",null);n(this,"options",{});n(this,"requestOptions",{});n(this,"fileData",null);this.container=e,this.options=t,this.requestOptions=s,this.createWrapper()}createWrapper(){this.wrapper=document.createElement("div"),this.wrapper.className="vue-office-docx",this.wrapperMain=document.createElement("div"),this.wrapperMain.className="vue-office-docx-main",this.wrapper.appendChild(this.wrapperMain),this.container.appendChild(this.wrapper)}setOptions(e){this.options=e}setRequestOptions(e){this.requestOptions=e}preview(e){return new Promise((t,s)=>{r.getData(e,this.requestOptions).then(async o=>{this.fileData=await r.getBlob(o),r.render(this.fileData,this.wrapperMain,this.options).then(()=>{t()}).catch(a=>{r.render("",this.wrapperMain,this.options),s(a)})}).catch(o=>{r.render("",this.wrapperMain,this.options),s(o)})})}save(e){l(e||`js-preview-docx-${new Date().getTime()}.docx`,this.fileData)}destroy(){this.container.removeChild(this.wrapper),this.container=null,this.wrapper=null,this.wrapperMain=null,this.options=null,this.requestOptions=null}}function f(i,e,t){return new w(i,e,t)}const v={init:f};const q={__name:"JsDocxDemo",setup(i){const e=h(null);return d(()=>{let t=v.init(e.value);t.preview("/vue-office/examples/dist/static/test-files/test.docx").then(s=>{console.log("docx preview done"),setTimeout(()=>{t.preview("/vue-office/examples/dist/static/test-files/test2.docx")},3e3)}).catch(s=>{console.log("err",s)})}),(t,s)=>(u(),m("div",{ref_key:"dom",ref:e},null,512))}};export{q as default};
|
1
examples/dist/assets/JsExcelDemo-91fa8b62.js
vendored
Normal file
1
examples/dist/assets/JsExcelDemo-91fa8b62.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
var c=Object.defineProperty;var p=(o,e,t)=>e in o?c(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var s=(o,e,t)=>(p(o,typeof e!="symbol"?e+"":e,t),t);import{S as u,a as h,b as d,t as w,c as l,l as f,r as m,g as x}from"./hack-67811302.js";import{d as b}from"./url-de9b02cf.js";/* empty css */import{r as v,o as D,a as k,c as S}from"./index-5d373288.js";import"./_commonjs-dynamic-modules-302442b1.js";const _={minColLength:20};class E{constructor(e,t={},r={}){s(this,"container",null);s(this,"wrapper",null);s(this,"wrapperMain",null);s(this,"options",{});s(this,"requestOptions",{});s(this,"mediasSource",[]);s(this,"workbookDataSource",{_worksheets:[]});s(this,"sheetIndex",1);s(this,"ctx",null);s(this,"xs",null);s(this,"offset",null);s(this,"observer",null);s(this,"fileData",null);this.container=e,this.options={..._,...t},this.requestOptions=r,this.createWrapper(),this.initSpreadsheet(),this.hack()}createWrapper(){this.wrapper=document.createElement("div"),this.wrapper.className="vue-office-excel",this.wrapperMain=document.createElement("div"),this.wrapperMain.className="vue-office-excel-main",this.wrapper.appendChild(this.wrapperMain),this.container.appendChild(this.wrapper)}initSpreadsheet(){this.xs=new u(this.wrapperMain,{mode:"read",showToolbar:!1,showContextmenu:this.options.showContextmenu||!1,view:{height:()=>this.wrapper&&this.wrapper.clientHeight||300,width:()=>this.wrapper&&this.wrapper.clientWidth||1200},row:{height:24,len:100},col:{len:26,width:80,indexWidth:60,minWidth:60},autoFocus:!1}).loadData({});let e=this,t=this.xs.bottombar.swapFunc;this.xs.bottombar.swapFunc=function(a){t.call(e.xs.bottombar,a),e.sheetIndex=a,setTimeout(()=>{e.xs.reRender(),h(e.ctx,e.mediasSource,e.workbookDataSource._worksheets[e.sheetIndex],e.offset)})};let r=this.xs.sheet.editor.clear;this.xs.sheet.editor.clear=function(...a){r.apply(e.xs.sheet.editor,a),setTimeout(()=>{h(e.ctx,e.mediasSource,e.workbookDataSource._worksheets[e.sheetIndex],e.offset)})};let i=this.xs.sheet.editor.setOffset;this.xs.sheet.editor.setOffset=function(...a){i.apply(e.xs.sheet.editor,a),e.offset=a[0],h(e.ctx,e.mediasSource,e.workbookDataSource._worksheets[e.sheetIndex],e.offset)};const n=this.wrapperMain.querySelector("canvas");this.ctx=n.getContext("2d")}renderExcel(e){return this.fileData=e,d(e).then(t=>{if(!t._worksheets||t._worksheets.length===0)throw new Error("未获取到数据,可能文件格式不正确或文件已损坏");this.options.beforeTransformData&&typeof this.options.beforeTransformData=="function"&&(t=this.options.beforeTransformData(t));let{workbookData:r,medias:i,workbookSource:n}=w(t,this.options);this.options.transformData&&typeof this.options.transformData=="function"&&(r=this.options.transformData(r)),this.mediasSource=i,this.workbookDataSource=n,this.offset=null,this.sheetIndex=0,l(),this.xs.loadData(r),h(this.ctx,this.mediasSource,this.workbookDataSource._worksheets[this.sheetIndex],this.offset)}).catch(t=>(this.mediasSource=[],this.workbookDataSource={_worksheets:[]},l(),this.xs.loadData({}),Promise.reject(t)))}hack(){const e=f.debounce(m,200).bind(this,this.wrapperMain);this.observer=new MutationObserver(e);const t={attributes:!0,childList:!0,subtree:!0};this.observer.observe(this.wrapperMain,t),e(this.wrapperMain)}setOptions(e){this.options=e}setRequestOptions(e){this.requestOptions=e}preview(e){return new Promise((t,r)=>{x(e,this.requestOptions).then(i=>{this.renderExcel(i).then(t).catch(n=>{this.xs.loadData({}),r(n)})}).catch(i=>{this.xs.loadData({}),r(i)})})}save(e){b(e||`js-preview-excel-${new Date().getTime()}.xlsx`,this.fileData)}destroy(){this.observer.disconnect(),this.container.removeChild(this.wrapper),this.container=null,this.wrapper=null,this.wrapperMain=null,this.ctx=null,this.xs=null,this.observer=null,this.options=null,this.requestOptions=null,this.mediasSource=null,this.workbookDataSource=null}}function g(o,e,t){return new E(o,e,t)}const O={init:g},P={__name:"JsExcelDemo",setup(o){const e=v(null);return D(()=>{window.myExcelPreview=O.init(e.value,{transformData:function(t){return console.log("transformData",t),t}}),window.myExcelPreview.preview("/vue-office/examples/dist/static/test-files/test.xlsx").then(t=>{console.log("excel preview done",window.myExcelPreview)}).catch(t=>{console.log("err",t)})}),(t,r)=>(k(),S("div",{ref_key:"dom",ref:e,style:{height:"calc(100vh - 50px)"}},null,512))}};export{P as default};
|
1
examples/dist/assets/JsExcelDemo-fa1996af.js
vendored
Normal file
1
examples/dist/assets/JsExcelDemo-fa1996af.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
var c=Object.defineProperty;var p=(o,e,t)=>e in o?c(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var s=(o,e,t)=>(p(o,typeof e!="symbol"?e+"":e,t),t);import{S as u,a as h,b as d,t as w,c as l,l as x,r as f,g as m}from"./hack-f62f946f.js";import{d as v}from"./url-de9b02cf.js";/* empty css */import{r as b,o as k,a as D,c as S}from"./index-58cbfcf0.js";import"./_commonjs-dynamic-modules-302442b1.js";const _={minColLength:20};class E{constructor(e,t={},r={}){s(this,"container",null);s(this,"wrapper",null);s(this,"wrapperMain",null);s(this,"options",{});s(this,"requestOptions",{});s(this,"mediasSource",[]);s(this,"workbookDataSource",{_worksheets:[]});s(this,"sheetIndex",1);s(this,"ctx",null);s(this,"xs",null);s(this,"offset",null);s(this,"observer",null);s(this,"fileData",null);this.container=e,this.options={..._,...t},this.requestOptions=r,this.createWrapper(),this.initSpreadsheet(),this.hack()}createWrapper(){this.wrapper=document.createElement("div"),this.wrapper.className="vue-office-excel",this.wrapperMain=document.createElement("div"),this.wrapperMain.className="vue-office-excel-main",this.wrapper.appendChild(this.wrapperMain),this.container.appendChild(this.wrapper)}initSpreadsheet(){this.xs=new u(this.wrapperMain,{mode:"read",showToolbar:!1,showContextmenu:this.options.showContextmenu||!1,view:{height:()=>this.wrapper&&this.wrapper.clientHeight||300,width:()=>this.wrapper&&this.wrapper.clientWidth||1200},row:{height:24,len:100},col:{len:26,width:80,indexWidth:60,minWidth:60},autoFocus:!1}).loadData({});let e=this,t=this.xs.bottombar.swapFunc;this.xs.bottombar.swapFunc=function(a){t.call(e.xs.bottombar,a),e.sheetIndex=a,setTimeout(()=>{e.xs.reRender(),h(e.ctx,e.mediasSource,e.workbookDataSource._worksheets[e.sheetIndex],e.offset)})};let r=this.xs.sheet.editor.clear;this.xs.sheet.editor.clear=function(...a){r.apply(e.xs.sheet.editor,a),setTimeout(()=>{h(e.ctx,e.mediasSource,e.workbookDataSource._worksheets[e.sheetIndex],e.offset)})};let i=this.xs.sheet.editor.setOffset;this.xs.sheet.editor.setOffset=function(...a){i.apply(e.xs.sheet.editor,a),e.offset=a[0],h(e.ctx,e.mediasSource,e.workbookDataSource._worksheets[e.sheetIndex],e.offset)};const n=this.wrapperMain.querySelector("canvas");this.ctx=n.getContext("2d")}renderExcel(e){return this.fileData=e,d(e).then(t=>{if(!t._worksheets||t._worksheets.length===0)throw new Error("未获取到数据,可能文件格式不正确或文件已损坏");let{workbookData:r,medias:i,workbookSource:n}=w(t,this.options);this.options.transformData&&typeof this.options.transformData=="function"&&(r=this.options.transformData(r)),this.mediasSource=i,this.workbookDataSource=n,this.offset=null,this.sheetIndex=0,l(),this.xs.loadData(r),h(this.ctx,this.mediasSource,this.workbookDataSource._worksheets[this.sheetIndex],this.offset)}).catch(t=>(this.mediasSource=[],this.workbookDataSource={_worksheets:[]},l(),this.xs.loadData({}),Promise.reject(t)))}hack(){const e=x.debounce(f,200).bind(this,this.wrapperMain);this.observer=new MutationObserver(e);const t={attributes:!0,childList:!0,subtree:!0};this.observer.observe(this.wrapperMain,t),e(this.wrapperMain)}setOptions(e){this.options=e}setRequestOptions(e){this.requestOptions=e}preview(e){return new Promise((t,r)=>{m(e,this.requestOptions).then(i=>{this.renderExcel(i).then(t).catch(n=>{this.xs.loadData({}),r(n)})}).catch(i=>{this.xs.loadData({}),r(i)})})}save(e){v(e||`js-preview-excel-${new Date().getTime()}.xlsx`,this.fileData)}destroy(){this.observer.disconnect(),this.container.removeChild(this.wrapper),this.container=null,this.wrapper=null,this.wrapperMain=null,this.ctx=null,this.xs=null,this.observer=null,this.options=null,this.requestOptions=null,this.mediasSource=null,this.workbookDataSource=null}}function g(o,e,t){return new E(o,e,t)}const O={init:g},T={__name:"JsExcelDemo",setup(o){const e=b(null);return k(()=>{window.myExcelPreview=O.init(e.value,{transformData:function(t){return console.log("transformData",t),t}}),window.myExcelPreview.preview("/vue-office/examples/dist/static/test-files/test.xlsx").then(t=>{console.log("excel preview done",window.myExcelPreview)}).catch(t=>{console.log("err",t)})}),(t,r)=>(D(),S("div",{ref_key:"dom",ref:e,style:{height:"calc(100vh - 50px)"}},null,512))}};export{T as default};
|
1
examples/dist/assets/JsPdfDemo-37829189.js
vendored
Normal file
1
examples/dist/assets/JsPdfDemo-37829189.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
examples/dist/assets/JsPdfDemo-d030d3e0.js
vendored
Normal file
1
examples/dist/assets/JsPdfDemo-d030d3e0.js
vendored
Normal file
File diff suppressed because one or more lines are too long
3
examples/dist/assets/PdfDemo-64ba1228.js
vendored
Normal file
3
examples/dist/assets/PdfDemo-64ba1228.js
vendored
Normal file
File diff suppressed because one or more lines are too long
3
examples/dist/assets/PdfDemo-d966f1fa.js
vendored
Normal file
3
examples/dist/assets/PdfDemo-d966f1fa.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
examples/dist/assets/PreviewWrapper-1c0384a3.js
vendored
Normal file
1
examples/dist/assets/PreviewWrapper-1c0384a3.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{r as d,p as C,_ as I,w as N,q as l,a as p,c as x,u as t,g as i,f as n,s as v,t as S,e as y,m,l as V,v as W,x as A,b as R}from"./index-58cbfcf0.js";function T(e){const s=d("url"),a=d(e),r=d(e),u=d([]);function b(w){let c=new FileReader;return c.onload=o=>{let _=o.target.result;r.value=_},c.readAsArrayBuffer(w),!1}return{type:s,inputSrc:a,src:r,fileList:u,beforeUpload:b}}let g=d(!1),k;function $(e){k=C.loading(e,0),g.value=!0}function q(){g.value===!0&&(k(),g.value=!1)}const E={loading:g,showLoading:$,hideLoading:q};function F(){return location.href.includes("test")}const j=e=>(W("data-v-6e0b6946"),e=e(),A(),e),z={class:"preview-wrapper"},D={key:0,class:"operate-area"},G=j(()=>R("div",{class:"preview-wrapper-main"},null,-1)),H={__name:"PreviewWrapper",props:{accept:String,placeholder:String,defaultSrc:String},setup(e){const s=e,{type:a,inputSrc:r,src:u,fileList:b,beforeUpload:w}=T(s.defaultSrc);return N(u,()=>{E.showLoading()},{immediate:!0}),(c,o)=>{const _=l("a-radio-button"),B=l("a-radio-group"),L=l("a-input"),h=l("a-button"),U=l("upload-outlined"),P=l("a-upload");return p(),x("div",z,[t(F)()?m("",!0):(p(),x("div",D,[i(B,{value:t(a),"onUpdate:value":o[0]||(o[0]=f=>S(a)?a.value=f:null),"button-style":"solid"},{default:n(()=>[i(_,{value:"url"},{default:n(()=>[v("远程文件地址")]),_:1}),i(_,{value:"upload"},{default:n(()=>[v("上传本地文件")]),_:1})]),_:1},8,["value"]),t(a)==="url"?(p(),y(L,{key:0,value:t(r),"onUpdate:value":o[1]||(o[1]=f=>S(r)?r.value=f:null),placeholder:s.placeholder,style:{width:"600px","margin-left":"10px"}},null,8,["value","placeholder"])):m("",!0),t(a)==="url"?(p(),y(h,{key:1,type:"primary",style:{"margin-left":"10px"},onClick:o[2]||(o[2]=f=>u.value=t(r))},{default:n(()=>[v(" 预览 ")]),_:1})):m("",!0),t(a)!=="url"?(p(),y(P,{key:2,accept:s.accept,action:"",beforeUpload:t(w),"file-list":[]},{default:n(()=>[i(h,{style:{"margin-left":"10px"}},{default:n(()=>[i(U),v(" 选择文件 ")]),_:1})]),_:1},8,["accept","beforeUpload"])):m("",!0)])),V(c.$slots,"default",{src:t(u)},void 0,!0),G])}}},K=I(H,[["__scopeId","data-v-6e0b6946"]]);export{K as P,E as u};
|
1
examples/dist/assets/PreviewWrapper-a5ea54f2.js
vendored
Normal file
1
examples/dist/assets/PreviewWrapper-a5ea54f2.js
vendored
Normal file
@ -0,0 +1 @@
|
||||
import{r as d,p as C,_ as I,w as N,q as l,a as p,c as x,u as t,g as i,f as n,s as v,t as S,e as y,m,l as V,v as W,x as A,b as R}from"./index-5d373288.js";function T(e){const s=d("url"),a=d(e),r=d(e),u=d([]);function b(w){let c=new FileReader;return c.onload=o=>{let _=o.target.result;r.value=_},c.readAsArrayBuffer(w),!1}return{type:s,inputSrc:a,src:r,fileList:u,beforeUpload:b}}let g=d(!1),k;function $(e){k=C.loading(e,0),g.value=!0}function q(){g.value===!0&&(k(),g.value=!1)}const E={loading:g,showLoading:$,hideLoading:q};function F(){return location.href.includes("test")}const j=e=>(W("data-v-6e0b6946"),e=e(),A(),e),z={class:"preview-wrapper"},D={key:0,class:"operate-area"},G=j(()=>R("div",{class:"preview-wrapper-main"},null,-1)),H={__name:"PreviewWrapper",props:{accept:String,placeholder:String,defaultSrc:String},setup(e){const s=e,{type:a,inputSrc:r,src:u,fileList:b,beforeUpload:w}=T(s.defaultSrc);return N(u,()=>{E.showLoading()},{immediate:!0}),(c,o)=>{const _=l("a-radio-button"),B=l("a-radio-group"),L=l("a-input"),h=l("a-button"),U=l("upload-outlined"),P=l("a-upload");return p(),x("div",z,[t(F)()?m("",!0):(p(),x("div",D,[i(B,{value:t(a),"onUpdate:value":o[0]||(o[0]=f=>S(a)?a.value=f:null),"button-style":"solid"},{default:n(()=>[i(_,{value:"url"},{default:n(()=>[v("远程文件地址")]),_:1}),i(_,{value:"upload"},{default:n(()=>[v("上传本地文件")]),_:1})]),_:1},8,["value"]),t(a)==="url"?(p(),y(L,{key:0,value:t(r),"onUpdate:value":o[1]||(o[1]=f=>S(r)?r.value=f:null),placeholder:s.placeholder,style:{width:"600px","margin-left":"10px"}},null,8,["value","placeholder"])):m("",!0),t(a)==="url"?(p(),y(h,{key:1,type:"primary",style:{"margin-left":"10px"},onClick:o[2]||(o[2]=f=>u.value=t(r))},{default:n(()=>[v(" 预览 ")]),_:1})):m("",!0),t(a)!=="url"?(p(),y(P,{key:2,accept:s.accept,action:"",beforeUpload:t(w),"file-list":[]},{default:n(()=>[i(h,{style:{"margin-left":"10px"}},{default:n(()=>[i(U),v(" 选择文件 ")]),_:1})]),_:1},8,["accept","beforeUpload"])):m("",!0)])),V(c.$slots,"default",{src:t(u)},void 0,!0),G])}}},K=I(H,[["__scopeId","data-v-6e0b6946"]]);export{K as P,E as u};
|
97
examples/dist/assets/docx-19f6a6c1.js
vendored
Normal file
97
examples/dist/assets/docx-19f6a6c1.js
vendored
Normal file
File diff suppressed because one or more lines are too long
97
examples/dist/assets/docx-d30f8993.js
vendored
Normal file
97
examples/dist/assets/docx-d30f8993.js
vendored
Normal file
File diff suppressed because one or more lines are too long
96
examples/dist/assets/hack-67811302.js
vendored
Normal file
96
examples/dist/assets/hack-67811302.js
vendored
Normal file
File diff suppressed because one or more lines are too long
96
examples/dist/assets/hack-f62f946f.js
vendored
Normal file
96
examples/dist/assets/hack-f62f946f.js
vendored
Normal file
File diff suppressed because one or more lines are too long
121
examples/dist/assets/index-58cbfcf0.js
vendored
Normal file
121
examples/dist/assets/index-58cbfcf0.js
vendored
Normal file
File diff suppressed because one or more lines are too long
121
examples/dist/assets/index-5d373288.js
vendored
Normal file
121
examples/dist/assets/index-5d373288.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
examples/dist/assets/omit-4f9f5d5d.js
vendored
Normal file
1
examples/dist/assets/omit-4f9f5d5d.js
vendored
Normal file
File diff suppressed because one or more lines are too long
1
examples/dist/assets/omit-a65afa34.js
vendored
Normal file
1
examples/dist/assets/omit-a65afa34.js
vendored
Normal file
File diff suppressed because one or more lines are too long
2
examples/dist/index.html
vendored
2
examples/dist/index.html
vendored
@ -7,7 +7,7 @@
|
||||
content="width=device-width, initial-scale=1.0,minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"
|
||||
/>
|
||||
<title>@vue-office演示demo</title>
|
||||
<script type="module" crossorigin src="/vue-office/examples/dist/assets/index-56333d8c.js"></script>
|
||||
<script type="module" crossorigin src="/vue-office/examples/dist/assets/index-5d373288.js"></script>
|
||||
<link rel="stylesheet" href="/vue-office/examples/dist/assets/index-37fb8ca9.css">
|
||||
</head>
|
||||
<body>
|
||||
|
File diff suppressed because one or more lines are too long
@ -1,10 +1,14 @@
|
||||
import{_ as s,c as a,o as n,O as l}from"./chunks/framework.935eb42c.js";const d=JSON.parse('{"title":"属性","description":"","frontmatter":{},"headers":[],"relativePath":"config/index.md"}'),o={name:"config/index.md"},p=l(`<h1 id="属性" tabindex="-1">属性 <a class="header-anchor" href="#属性" aria-label="Permalink to "属性""></a></h1><h2 id="src" tabindex="-1">src <a class="header-anchor" href="#src" aria-label="Permalink to "src""></a></h2><ul><li>类型:String, ArrayBuffer, Blob</li></ul><p>文档地址,文件在CDN或服务器上的地址,或者是通过FileReader读取的文件ArrayBuffer或者Blob格式。</p><h2 id="request-options" tabindex="-1">request-options <a class="header-anchor" href="#request-options" aria-label="Permalink to "request-options""></a></h2><ul><li>类型:Object</li></ul><p>如果属性src是个文件地址,组件内部会通过window.fetch进行请求,对应window.fetch的请求参数,可以用来设置header等请求信息。</p><h2 id="options" tabindex="-1">options <a class="header-anchor" href="#options" aria-label="Permalink to "options""></a></h2><ul><li>类型: Object</li></ul><p>预览需要的一些特殊配置,不同预览组件可配置项各不相同。</p><ul><li>excel预览</li></ul><p>excel相关的配置,目前支持配置项很少。</p><p>minColLength: excel最少渲染多少列,如果想实现xlsx文件内容有几列,就渲染几列,可以将此值设置为0.</p><p>minRowLength: excel最少渲染多少行,如果想实现根据xlsx实际函数渲染,可以将此值设置为0.</p><p>widthOffset:在默认渲染的列表宽度上再加 Npx宽</p><p>heightOffset:在默认渲染的列表高度上再加 Npx高</p><p>transformData:在预览之前可以通过transformData对即将渲染数据及样式进行修改</p><div class="language-javascript"><button title="Copy Code" class="copy"></button><span class="lang">javascript</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||||
import{_ as s,c as a,o as n,O as l}from"./chunks/framework.935eb42c.js";const d=JSON.parse('{"title":"属性","description":"","frontmatter":{},"headers":[],"relativePath":"config/index.md"}'),o={name:"config/index.md"},p=l(`<h1 id="属性" tabindex="-1">属性 <a class="header-anchor" href="#属性" aria-label="Permalink to "属性""></a></h1><h2 id="src" tabindex="-1">src <a class="header-anchor" href="#src" aria-label="Permalink to "src""></a></h2><ul><li>类型:String, ArrayBuffer, Blob</li></ul><p>文档地址,文件在CDN或服务器上的地址,或者是通过FileReader读取的文件ArrayBuffer或者Blob格式。</p><h2 id="request-options" tabindex="-1">request-options <a class="header-anchor" href="#request-options" aria-label="Permalink to "request-options""></a></h2><ul><li>类型:Object</li></ul><p>如果属性src是个文件地址,组件内部会通过window.fetch进行请求,对应window.fetch的请求参数,可以用来设置header等请求信息。</p><h2 id="options" tabindex="-1">options <a class="header-anchor" href="#options" aria-label="Permalink to "options""></a></h2><ul><li>类型: Object</li></ul><p>预览需要的一些特殊配置,不同预览组件可配置项各不相同。</p><ul><li>excel预览</li></ul><p>excel相关的配置,目前支持配置项很少。</p><p>minColLength: excel最少渲染多少列,如果想实现xlsx文件内容有几列,就渲染几列,可以将此值设置为0.</p><p>minRowLength: excel最少渲染多少行,如果想实现根据xlsx实际函数渲染,可以将此值设置为0.</p><p>widthOffset:在默认渲染的列表宽度上再加 Npx宽</p><p>heightOffset:在默认渲染的列表高度上再加 Npx高</p><p>beforeTransformData: 底层通过exceljs获取excel文件内容,通过该钩子函数,可以对获取的excel文件内容进行修改,比如某个单元格的数据显示不正确,可以在此自行修改每个单元格的value值。</p><p>transformData:将获取到的excel数据进行处理之后且渲染到页面之前,可通过transformData对即将渲染的数据及样式进行修改,此时每个单元格的text值就是即将渲染到页面上的内容。</p><div class="language-javascript"><button title="Copy Code" class="copy"></button><span class="lang">javascript</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">minColLength</span><span style="color:#89DDFF;">"</span><span style="color:#F07178;">: </span><span style="color:#F78C6C;">20</span><span style="color:#89DDFF;">,</span><span style="color:#F07178;"> </span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">minRowLength</span><span style="color:#89DDFF;">"</span><span style="color:#F07178;">: </span><span style="color:#F78C6C;">100</span><span style="color:#89DDFF;">,</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">widthOffset</span><span style="color:#89DDFF;">"</span><span style="color:#F07178;">: </span><span style="color:#F78C6C;">10</span><span style="color:#89DDFF;">,</span><span style="color:#F07178;"> </span><span style="color:#676E95;font-style:italic;">//在默认渲染的列表宽度上再加10px宽</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">heightOffset</span><span style="color:#89DDFF;">"</span><span style="color:#F07178;">: </span><span style="color:#F78C6C;">10</span><span style="color:#89DDFF;">,</span><span style="color:#F07178;"> </span><span style="color:#676E95;font-style:italic;">//在默认渲染的列表高度上再加10px高</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">beforeTransformData</span><span style="color:#89DDFF;">"</span><span style="color:#F07178;">: </span><span style="color:#C792EA;">function</span><span style="color:#F07178;"> </span><span style="color:#89DDFF;">(</span><span style="color:#A6ACCD;font-style:italic;">workbookData</span><span style="color:#89DDFF;">){</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"> </span><span style="color:#676E95;font-style:italic;">//修改workbookData,可以打印出来看看数据格式</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;font-style:italic;">return</span><span style="color:#F07178;"> </span><span style="color:#A6ACCD;">workbookData</span><span style="color:#89DDFF;">;</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">},</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">transformData</span><span style="color:#89DDFF;">"</span><span style="color:#F07178;">: </span><span style="color:#C792EA;">function</span><span style="color:#F07178;"> </span><span style="color:#89DDFF;">(</span><span style="color:#A6ACCD;font-style:italic;">workbookData</span><span style="color:#89DDFF;">){</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"> </span><span style="color:#676E95;font-style:italic;">//修改workbookData</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"> </span><span style="color:#676E95;font-style:italic;">//修改workbookData,可以打印出来看看数据格式</span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;font-style:italic;">return</span><span style="color:#F07178;"> </span><span style="color:#A6ACCD;">workbookData</span><span style="color:#89DDFF;">;</span><span style="color:#F07178;"> </span></span>
|
||||
<span class="line"><span style="color:#F07178;"> </span><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span></code></pre></div><ul><li>docx预览</li></ul><p>docx预览组件支持的可配置项如下</p><div class="language-typescript"><button title="Copy Code" class="copy"></button><span class="lang">typescript</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#89DDFF;">{</span></span>
|
||||
@ -26,4 +30,4 @@ import{_ as s,c as a,o as n,O as l}from"./chunks/framework.935eb42c.js";const d=
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#F07178;">httpHeaders</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">{},</span><span style="color:#A6ACCD;"> </span><span style="color:#676E95;font-style:italic;">//object, Basic authentication headers</span></span>
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#F07178;">password</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">''</span><span style="color:#89DDFF;">,</span><span style="color:#A6ACCD;"> </span><span style="color:#676E95;font-style:italic;">//string, 加密pdf的密码</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"> </span><span style="color:#676E95;font-style:italic;">//更多配置参见 https://mozilla.github.io/pdf.js/api/draft/module-pdfjsLib.html</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span></code></pre></div><h2 id="staticfileurl-pdf特有属性" tabindex="-1">staticFileUrl [pdf特有属性] <a class="header-anchor" href="#staticfileurl-pdf特有属性" aria-label="Permalink to "staticFileUrl [pdf特有属性]""></a></h2><ul><li>类型: String</li></ul><p>pdf渲染时可能会请求一些bcmap文件,这些文件默认从 <a href="https://unpkg.com/pdfjs-dist@3.1.81/" target="_blank" rel="noreferrer">https://unpkg.com/pdfjs-dist@3.1.81/</a> 加载,但是可能存在网络不通问题,如果遇到这种问题,可以将这些文件放到自己静态目录,然后修改该属性,告诉组件去这里请求bcmap文件。</p><p>涉及的文件存放在当前github项目中examples/public/cmaps目录下,可将cmaps目录复制到你的静态服务目录下,然后修改staticFileUrl为cmaps文件夹对应的父地址,必须已http或https开头,如 <a href="http://yourdomain/static/" target="_blank" rel="noreferrer">http://yourdomain/static/</a></p>`,28),e=[p];function t(r,c,F,y,i,D){return n(),a("div",null,e)}const f=s(o,[["render",t]]);export{d as __pageData,f as default};
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span></code></pre></div><h2 id="staticfileurl-pdf特有属性" tabindex="-1">staticFileUrl [pdf特有属性] <a class="header-anchor" href="#staticfileurl-pdf特有属性" aria-label="Permalink to "staticFileUrl [pdf特有属性]""></a></h2><ul><li>类型: String</li></ul><p>pdf渲染时可能会请求一些bcmap文件,这些文件默认从 <a href="https://unpkg.com/pdfjs-dist@3.1.81/" target="_blank" rel="noreferrer">https://unpkg.com/pdfjs-dist@3.1.81/</a> 加载,但是可能存在网络不通问题,如果遇到这种问题,可以将这些文件放到自己静态目录,然后修改该属性,告诉组件去这里请求bcmap文件。</p><p>涉及的文件存放在当前github项目中examples/public/cmaps目录下,可将cmaps目录复制到你的静态服务目录下,然后修改staticFileUrl为cmaps文件夹对应的父地址,必须已http或https开头,如 <a href="http://yourdomain/static/" target="_blank" rel="noreferrer">http://yourdomain/static/</a></p>`,29),e=[p];function t(c,r,F,y,i,D){return n(),a("div",null,e)}const f=s(o,[["render",t]]);export{d as __pageData,f as default};
|
@ -1 +1 @@
|
||||
import{_ as s,c as a,o as n,O as l}from"./chunks/framework.935eb42c.js";const d=JSON.parse('{"title":"属性","description":"","frontmatter":{},"headers":[],"relativePath":"config/index.md"}'),o={name:"config/index.md"},p=l("",28),e=[p];function t(r,c,F,y,i,D){return n(),a("div",null,e)}const f=s(o,[["render",t]]);export{d as __pageData,f as default};
|
||||
import{_ as s,c as a,o as n,O as l}from"./chunks/framework.935eb42c.js";const d=JSON.parse('{"title":"属性","description":"","frontmatter":{},"headers":[],"relativePath":"config/index.md"}'),o={name:"config/index.md"},p=l("",29),e=[p];function t(c,r,F,y,i,D){return n(),a("div",null,e)}const f=s(o,[["render",t]]);export{d as __pageData,f as default};
|
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
@ -40,7 +40,7 @@
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">vue</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">2.6.10</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">,</span></span>
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C792EA;">vue-template-compiler</span><span style="color:#89DDFF;">"</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">"</span><span style="color:#C3E88D;">2.6.10</span><span style="color:#89DDFF;">"</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span></code></pre></div><p>删除 package-lock.json 文件 和 node_modules中的全部包。</p><p>重新安装所有依赖,然后运行查看效果。</p></div></div></main><footer class="VPDocFooter" data-v-aa7e4f8a data-v-6701008d><!--[--><!--]--><!----><div class="prev-next" data-v-6701008d><div class="pager" data-v-6701008d><a class="pager-link prev" href="/vue-office/examples/docs/guide/js-preview.html" data-v-6701008d><span class="desc" data-v-6701008d>上一页</span><span class="title" data-v-6701008d>非Vue框架进行文件预览</span></a></div><div class="has-prev pager" data-v-6701008d><a class="pager-link next" href="/vue-office/examples/docs/guide/contact.html" data-v-6701008d><span class="desc" data-v-6701008d>下一页</span><span class="title" data-v-6701008d>联系我</span></a></div></div></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"config_event.md\":\"cbedfdd0\",\"guide_contact.md\":\"10c84e73\",\"config_index.md\":\"a066edee\",\"guide_index.md\":\"59f780b1\",\"guide_js-preview.md\":\"d8c75dcf\",\"guide_faq.md\":\"fc7d1e4f\",\"index.md\":\"2dfe7e9d\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_preview-docx.md\":\"747caaea\",\"guide_preview-pdf.md\":\"9bd426ea\"}")
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"guide_contact.md\":\"10c84e73\",\"config_event.md\":\"cbedfdd0\",\"config_index.md\":\"95a7c30b\",\"guide_preview-pdf.md\":\"9bd426ea\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_js-preview.md\":\"d8c75dcf\",\"index.md\":\"2dfe7e9d\",\"guide_preview-docx.md\":\"747caaea\",\"guide_index.md\":\"59f780b1\",\"guide_faq.md\":\"fc7d1e4f\"}")
|
||||
__VP_SITE_DATA__ = JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"vue-office\",\"description\":\"更简单的office文件预览\",\"base\":\"/vue-office/examples/docs/\",\"head\":[],\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"指南\",\"link\":\"/guide/\"},{\"text\":\"配置参考\",\"link\":\"/config/\"},{\"text\":\"演示预览效果\",\"link\":\"https://501351981.github.io/vue-office/examples/dist/\"}],\"outlineTitle\":\"跳转到\",\"docFooter\":{\"next\":\"下一页\",\"prev\":\"上一页\"},\"sidebar\":{\"/guide\":[{\"text\":\"指南\",\"items\":[{\"text\":\"快速上手\",\"link\":\"/guide/\"},{\"text\":\"docx文件预览\",\"link\":\"/guide/preview-docx\"},{\"text\":\"xlsx文件预览\",\"link\":\"/guide/preview-xlsx\"},{\"text\":\"pdf文件预览\",\"link\":\"/guide/preview-pdf\"},{\"text\":\"非Vue框架进行文件预览\",\"link\":\"/guide/js-preview\"},{\"text\":\"常见问题\",\"link\":\"/guide/faq\"},{\"text\":\"联系我\",\"link\":\"/guide/contact\"}]}],\"/config\":[{\"text\":\"配置参考\",\"items\":[{\"text\":\"属性\",\"link\":\"/config/\"},{\"text\":\"事件\",\"link\":\"/config/event\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/501351981/vue-office\"}]},\"locales\":{},\"scrollOffset\":90,\"cleanUrls\":false}")</script>
|
||||
|
||||
</body>
|
||||
|
@ -128,7 +128,7 @@
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"></</span><span style="color:#F07178;">script</span><span style="color:#89DDFF;">></span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-aa7e4f8a data-v-6701008d><!--[--><!--]--><!----><div class="prev-next" data-v-6701008d><div class="pager" data-v-6701008d><!----></div><div class="pager" data-v-6701008d><a class="pager-link next" href="/vue-office/examples/docs/guide/preview-docx.html" data-v-6701008d><span class="desc" data-v-6701008d>下一页</span><span class="title" data-v-6701008d>docx文件预览</span></a></div></div></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"config_event.md\":\"cbedfdd0\",\"guide_contact.md\":\"10c84e73\",\"config_index.md\":\"a066edee\",\"guide_index.md\":\"59f780b1\",\"guide_js-preview.md\":\"d8c75dcf\",\"guide_faq.md\":\"fc7d1e4f\",\"index.md\":\"2dfe7e9d\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_preview-docx.md\":\"747caaea\",\"guide_preview-pdf.md\":\"9bd426ea\"}")
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"guide_contact.md\":\"10c84e73\",\"config_event.md\":\"cbedfdd0\",\"config_index.md\":\"95a7c30b\",\"guide_preview-pdf.md\":\"9bd426ea\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_js-preview.md\":\"d8c75dcf\",\"index.md\":\"2dfe7e9d\",\"guide_preview-docx.md\":\"747caaea\",\"guide_index.md\":\"59f780b1\",\"guide_faq.md\":\"fc7d1e4f\"}")
|
||||
__VP_SITE_DATA__ = JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"vue-office\",\"description\":\"更简单的office文件预览\",\"base\":\"/vue-office/examples/docs/\",\"head\":[],\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"指南\",\"link\":\"/guide/\"},{\"text\":\"配置参考\",\"link\":\"/config/\"},{\"text\":\"演示预览效果\",\"link\":\"https://501351981.github.io/vue-office/examples/dist/\"}],\"outlineTitle\":\"跳转到\",\"docFooter\":{\"next\":\"下一页\",\"prev\":\"上一页\"},\"sidebar\":{\"/guide\":[{\"text\":\"指南\",\"items\":[{\"text\":\"快速上手\",\"link\":\"/guide/\"},{\"text\":\"docx文件预览\",\"link\":\"/guide/preview-docx\"},{\"text\":\"xlsx文件预览\",\"link\":\"/guide/preview-xlsx\"},{\"text\":\"pdf文件预览\",\"link\":\"/guide/preview-pdf\"},{\"text\":\"非Vue框架进行文件预览\",\"link\":\"/guide/js-preview\"},{\"text\":\"常见问题\",\"link\":\"/guide/faq\"},{\"text\":\"联系我\",\"link\":\"/guide/contact\"}]}],\"/config\":[{\"text\":\"配置参考\",\"items\":[{\"text\":\"属性\",\"link\":\"/config/\"},{\"text\":\"事件\",\"link\":\"/config/event\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/501351981/vue-office\"}]},\"locales\":{},\"scrollOffset\":90,\"cleanUrls\":false}")</script>
|
||||
|
||||
</body>
|
||||
|
@ -78,7 +78,7 @@
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#F07178;">CMapReaderFactory</span><span style="color:#89DDFF;">?:</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Object</span><span style="color:#89DDFF;">;</span></span>
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#F07178;">useSystemFonts</span><span style="color:#89DDFF;">?:</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">boolean</span><span style="color:#89DDFF;">;</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span></code></pre></div><h3 id="preview方法" tabindex="-1">preview方法 <a class="header-anchor" href="#preview方法" aria-label="Permalink to "preview方法""></a></h3><p>调用preview方法进行文件的预览。</p><p>preview方法接收参数支持三种: 文件url地址、文件ArrayBuffer格式数据、文件blob格式。</p><div class="language-ts"><button title="Copy Code" class="copy"></button><span class="lang">ts</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">preview</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">(</span><span style="color:#A6ACCD;font-style:italic;">src</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">string</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">ArrayBuffer</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">|</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Blob</span><span style="color:#89DDFF;">)</span><span style="color:#A6ACCD;"> </span><span style="color:#C792EA;">=></span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">Promise</span><span style="color:#89DDFF;"><</span><span style="color:#A6ACCD;">any</span><span style="color:#89DDFF;">></span></span></code></pre></div><p>url格式适合有文件静态地址的情况,ArrayBuffer格式适合文件上传前的预览。</p><h3 id="save方法" tabindex="-1">save方法 <a class="header-anchor" href="#save方法" aria-label="Permalink to "save方法""></a></h3><p>调用save进行文件下载,参数名为下载的文件名称,可不传。</p><div class="language-ts"><button title="Copy Code" class="copy"></button><span class="lang">ts</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">save</span><span style="color:#89DDFF;">:</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">(</span><span style="color:#A6ACCD;font-style:italic;">fileName</span><span style="color:#89DDFF;">?:</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">string</span><span style="color:#89DDFF;">)</span><span style="color:#A6ACCD;"> </span><span style="color:#C792EA;">=></span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">void;</span></span></code></pre></div><h3 id="destroy方法" tabindex="-1">destroy方法 <a class="header-anchor" href="#destroy方法" aria-label="Permalink to "destroy方法""></a></h3><p>卸载方法,可以在组件销毁前调用预览对象的卸载方法,避免长期使用造成内存泄露。</p><h2 id="如果该项目帮助了您-还请您不吝点赞" tabindex="-1">如果该项目帮助了您,还请您不吝点赞 <a class="header-anchor" href="#如果该项目帮助了您-还请您不吝点赞" aria-label="Permalink to "如果该项目帮助了您,还请您不吝点赞""></a></h2></div></div></main><footer class="VPDocFooter" data-v-aa7e4f8a data-v-6701008d><!--[--><!--]--><!----><div class="prev-next" data-v-6701008d><div class="pager" data-v-6701008d><a class="pager-link prev" href="/vue-office/examples/docs/guide/preview-pdf.html" data-v-6701008d><span class="desc" data-v-6701008d>上一页</span><span class="title" data-v-6701008d>pdf文件预览</span></a></div><div class="has-prev pager" data-v-6701008d><a class="pager-link next" href="/vue-office/examples/docs/guide/faq.html" data-v-6701008d><span class="desc" data-v-6701008d>下一页</span><span class="title" data-v-6701008d>常见问题</span></a></div></div></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"config_event.md\":\"cbedfdd0\",\"guide_contact.md\":\"10c84e73\",\"config_index.md\":\"a066edee\",\"guide_index.md\":\"59f780b1\",\"guide_js-preview.md\":\"d8c75dcf\",\"guide_faq.md\":\"fc7d1e4f\",\"index.md\":\"2dfe7e9d\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_preview-docx.md\":\"747caaea\",\"guide_preview-pdf.md\":\"9bd426ea\"}")
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"guide_contact.md\":\"10c84e73\",\"config_event.md\":\"cbedfdd0\",\"config_index.md\":\"95a7c30b\",\"guide_preview-pdf.md\":\"9bd426ea\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_js-preview.md\":\"d8c75dcf\",\"index.md\":\"2dfe7e9d\",\"guide_preview-docx.md\":\"747caaea\",\"guide_index.md\":\"59f780b1\",\"guide_faq.md\":\"fc7d1e4f\"}")
|
||||
__VP_SITE_DATA__ = JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"vue-office\",\"description\":\"更简单的office文件预览\",\"base\":\"/vue-office/examples/docs/\",\"head\":[],\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"指南\",\"link\":\"/guide/\"},{\"text\":\"配置参考\",\"link\":\"/config/\"},{\"text\":\"演示预览效果\",\"link\":\"https://501351981.github.io/vue-office/examples/dist/\"}],\"outlineTitle\":\"跳转到\",\"docFooter\":{\"next\":\"下一页\",\"prev\":\"上一页\"},\"sidebar\":{\"/guide\":[{\"text\":\"指南\",\"items\":[{\"text\":\"快速上手\",\"link\":\"/guide/\"},{\"text\":\"docx文件预览\",\"link\":\"/guide/preview-docx\"},{\"text\":\"xlsx文件预览\",\"link\":\"/guide/preview-xlsx\"},{\"text\":\"pdf文件预览\",\"link\":\"/guide/preview-pdf\"},{\"text\":\"非Vue框架进行文件预览\",\"link\":\"/guide/js-preview\"},{\"text\":\"常见问题\",\"link\":\"/guide/faq\"},{\"text\":\"联系我\",\"link\":\"/guide/contact\"}]}],\"/config\":[{\"text\":\"配置参考\",\"items\":[{\"text\":\"属性\",\"link\":\"/config/\"},{\"text\":\"事件\",\"link\":\"/config/event\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/501351981/vue-office\"}]},\"locales\":{},\"scrollOffset\":90,\"cleanUrls\":false}")</script>
|
||||
|
||||
</body>
|
||||
|
@ -121,7 +121,7 @@
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"></</span><span style="color:#F07178;">script</span><span style="color:#89DDFF;">></span></span></code></pre></div></div></div></main><footer class="VPDocFooter" data-v-aa7e4f8a data-v-6701008d><!--[--><!--]--><!----><div class="prev-next" data-v-6701008d><div class="pager" data-v-6701008d><a class="pager-link prev" href="/vue-office/examples/docs/guide/" data-v-6701008d><span class="desc" data-v-6701008d>上一页</span><span class="title" data-v-6701008d>快速上手</span></a></div><div class="has-prev pager" data-v-6701008d><a class="pager-link next" href="/vue-office/examples/docs/guide/preview-xlsx.html" data-v-6701008d><span class="desc" data-v-6701008d>下一页</span><span class="title" data-v-6701008d>xlsx文件预览</span></a></div></div></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"config_event.md\":\"cbedfdd0\",\"guide_contact.md\":\"10c84e73\",\"config_index.md\":\"a066edee\",\"guide_index.md\":\"59f780b1\",\"guide_js-preview.md\":\"d8c75dcf\",\"guide_faq.md\":\"fc7d1e4f\",\"index.md\":\"2dfe7e9d\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_preview-docx.md\":\"747caaea\",\"guide_preview-pdf.md\":\"9bd426ea\"}")
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"guide_contact.md\":\"10c84e73\",\"config_event.md\":\"cbedfdd0\",\"config_index.md\":\"95a7c30b\",\"guide_preview-pdf.md\":\"9bd426ea\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_js-preview.md\":\"d8c75dcf\",\"index.md\":\"2dfe7e9d\",\"guide_preview-docx.md\":\"747caaea\",\"guide_index.md\":\"59f780b1\",\"guide_faq.md\":\"fc7d1e4f\"}")
|
||||
__VP_SITE_DATA__ = JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"vue-office\",\"description\":\"更简单的office文件预览\",\"base\":\"/vue-office/examples/docs/\",\"head\":[],\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"指南\",\"link\":\"/guide/\"},{\"text\":\"配置参考\",\"link\":\"/config/\"},{\"text\":\"演示预览效果\",\"link\":\"https://501351981.github.io/vue-office/examples/dist/\"}],\"outlineTitle\":\"跳转到\",\"docFooter\":{\"next\":\"下一页\",\"prev\":\"上一页\"},\"sidebar\":{\"/guide\":[{\"text\":\"指南\",\"items\":[{\"text\":\"快速上手\",\"link\":\"/guide/\"},{\"text\":\"docx文件预览\",\"link\":\"/guide/preview-docx\"},{\"text\":\"xlsx文件预览\",\"link\":\"/guide/preview-xlsx\"},{\"text\":\"pdf文件预览\",\"link\":\"/guide/preview-pdf\"},{\"text\":\"非Vue框架进行文件预览\",\"link\":\"/guide/js-preview\"},{\"text\":\"常见问题\",\"link\":\"/guide/faq\"},{\"text\":\"联系我\",\"link\":\"/guide/contact\"}]}],\"/config\":[{\"text\":\"配置参考\",\"items\":[{\"text\":\"属性\",\"link\":\"/config/\"},{\"text\":\"事件\",\"link\":\"/config/event\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/501351981/vue-office\"}]},\"locales\":{},\"scrollOffset\":90,\"cleanUrls\":false}")</script>
|
||||
|
||||
</body>
|
||||
|
@ -45,7 +45,7 @@
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"></</span><span style="color:#F07178;">script</span><span style="color:#89DDFF;">></span></span></code></pre></div><h2 id="上传文件预览" tabindex="-1">上传文件预览 <a class="header-anchor" href="#上传文件预览" aria-label="Permalink to "上传文件预览""></a></h2><p>和docx的上传文件预览一样,获取文件的ArrayBuffer,传给组件的src属性。</p></div></div></main><footer class="VPDocFooter" data-v-aa7e4f8a data-v-6701008d><!--[--><!--]--><!----><div class="prev-next" data-v-6701008d><div class="pager" data-v-6701008d><a class="pager-link prev" href="/vue-office/examples/docs/guide/preview-xlsx.html" data-v-6701008d><span class="desc" data-v-6701008d>上一页</span><span class="title" data-v-6701008d>xlsx文件预览</span></a></div><div class="has-prev pager" data-v-6701008d><a class="pager-link next" href="/vue-office/examples/docs/guide/js-preview.html" data-v-6701008d><span class="desc" data-v-6701008d>下一页</span><span class="title" data-v-6701008d>非Vue框架进行文件预览</span></a></div></div></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"config_event.md\":\"cbedfdd0\",\"guide_contact.md\":\"10c84e73\",\"config_index.md\":\"a066edee\",\"guide_index.md\":\"59f780b1\",\"guide_js-preview.md\":\"d8c75dcf\",\"guide_faq.md\":\"fc7d1e4f\",\"index.md\":\"2dfe7e9d\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_preview-docx.md\":\"747caaea\",\"guide_preview-pdf.md\":\"9bd426ea\"}")
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"guide_contact.md\":\"10c84e73\",\"config_event.md\":\"cbedfdd0\",\"config_index.md\":\"95a7c30b\",\"guide_preview-pdf.md\":\"9bd426ea\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_js-preview.md\":\"d8c75dcf\",\"index.md\":\"2dfe7e9d\",\"guide_preview-docx.md\":\"747caaea\",\"guide_index.md\":\"59f780b1\",\"guide_faq.md\":\"fc7d1e4f\"}")
|
||||
__VP_SITE_DATA__ = JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"vue-office\",\"description\":\"更简单的office文件预览\",\"base\":\"/vue-office/examples/docs/\",\"head\":[],\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"指南\",\"link\":\"/guide/\"},{\"text\":\"配置参考\",\"link\":\"/config/\"},{\"text\":\"演示预览效果\",\"link\":\"https://501351981.github.io/vue-office/examples/dist/\"}],\"outlineTitle\":\"跳转到\",\"docFooter\":{\"next\":\"下一页\",\"prev\":\"上一页\"},\"sidebar\":{\"/guide\":[{\"text\":\"指南\",\"items\":[{\"text\":\"快速上手\",\"link\":\"/guide/\"},{\"text\":\"docx文件预览\",\"link\":\"/guide/preview-docx\"},{\"text\":\"xlsx文件预览\",\"link\":\"/guide/preview-xlsx\"},{\"text\":\"pdf文件预览\",\"link\":\"/guide/preview-pdf\"},{\"text\":\"非Vue框架进行文件预览\",\"link\":\"/guide/js-preview\"},{\"text\":\"常见问题\",\"link\":\"/guide/faq\"},{\"text\":\"联系我\",\"link\":\"/guide/contact\"}]}],\"/config\":[{\"text\":\"配置参考\",\"items\":[{\"text\":\"属性\",\"link\":\"/config/\"},{\"text\":\"事件\",\"link\":\"/config/event\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/501351981/vue-office\"}]},\"locales\":{},\"scrollOffset\":90,\"cleanUrls\":false}")</script>
|
||||
|
||||
</body>
|
||||
|
@ -48,7 +48,7 @@
|
||||
<span class="line"><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;">}</span></span>
|
||||
<span class="line"><span style="color:#89DDFF;"></</span><span style="color:#F07178;">script</span><span style="color:#89DDFF;">></span></span></code></pre></div><h2 id="上传文件预览" tabindex="-1">上传文件预览 <a class="header-anchor" href="#上传文件预览" aria-label="Permalink to "上传文件预览""></a></h2><p>和docx的上传文件预览一样,获取文件的ArrayBuffer,传给组件的src属性。</p></div></div></main><footer class="VPDocFooter" data-v-aa7e4f8a data-v-6701008d><!--[--><!--]--><!----><div class="prev-next" data-v-6701008d><div class="pager" data-v-6701008d><a class="pager-link prev" href="/vue-office/examples/docs/guide/preview-docx.html" data-v-6701008d><span class="desc" data-v-6701008d>上一页</span><span class="title" data-v-6701008d>docx文件预览</span></a></div><div class="has-prev pager" data-v-6701008d><a class="pager-link next" href="/vue-office/examples/docs/guide/preview-pdf.html" data-v-6701008d><span class="desc" data-v-6701008d>下一页</span><span class="title" data-v-6701008d>pdf文件预览</span></a></div></div></footer><!--[--><!--]--></div></div></div><!--[--><!--]--></div></div><!----><!--[--><!--]--></div></div>
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"config_event.md\":\"cbedfdd0\",\"guide_contact.md\":\"10c84e73\",\"config_index.md\":\"a066edee\",\"guide_index.md\":\"59f780b1\",\"guide_js-preview.md\":\"d8c75dcf\",\"guide_faq.md\":\"fc7d1e4f\",\"index.md\":\"2dfe7e9d\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_preview-docx.md\":\"747caaea\",\"guide_preview-pdf.md\":\"9bd426ea\"}")
|
||||
<script>__VP_HASH_MAP__ = JSON.parse("{\"guide_contact.md\":\"10c84e73\",\"config_event.md\":\"cbedfdd0\",\"config_index.md\":\"95a7c30b\",\"guide_preview-pdf.md\":\"9bd426ea\",\"guide_preview-xlsx.md\":\"0de0ac4e\",\"guide_js-preview.md\":\"d8c75dcf\",\"index.md\":\"2dfe7e9d\",\"guide_preview-docx.md\":\"747caaea\",\"guide_index.md\":\"59f780b1\",\"guide_faq.md\":\"fc7d1e4f\"}")
|
||||
__VP_SITE_DATA__ = JSON.parse("{\"lang\":\"en-US\",\"dir\":\"ltr\",\"title\":\"vue-office\",\"description\":\"更简单的office文件预览\",\"base\":\"/vue-office/examples/docs/\",\"head\":[],\"appearance\":true,\"themeConfig\":{\"nav\":[{\"text\":\"指南\",\"link\":\"/guide/\"},{\"text\":\"配置参考\",\"link\":\"/config/\"},{\"text\":\"演示预览效果\",\"link\":\"https://501351981.github.io/vue-office/examples/dist/\"}],\"outlineTitle\":\"跳转到\",\"docFooter\":{\"next\":\"下一页\",\"prev\":\"上一页\"},\"sidebar\":{\"/guide\":[{\"text\":\"指南\",\"items\":[{\"text\":\"快速上手\",\"link\":\"/guide/\"},{\"text\":\"docx文件预览\",\"link\":\"/guide/preview-docx\"},{\"text\":\"xlsx文件预览\",\"link\":\"/guide/preview-xlsx\"},{\"text\":\"pdf文件预览\",\"link\":\"/guide/preview-pdf\"},{\"text\":\"非Vue框架进行文件预览\",\"link\":\"/guide/js-preview\"},{\"text\":\"常见问题\",\"link\":\"/guide/faq\"},{\"text\":\"联系我\",\"link\":\"/guide/contact\"}]}],\"/config\":[{\"text\":\"配置参考\",\"items\":[{\"text\":\"属性\",\"link\":\"/config/\"},{\"text\":\"事件\",\"link\":\"/config/event\"}]}]},\"socialLinks\":[{\"icon\":\"github\",\"link\":\"https://github.com/501351981/vue-office\"}]},\"locales\":{},\"scrollOffset\":90,\"cleanUrls\":false}")</script>
|
||||
|
||||
</body>
|
||||
|
@ -1 +1 @@
|
||||
{"config_event.md":"cbedfdd0","guide_contact.md":"10c84e73","config_index.md":"a066edee","guide_index.md":"59f780b1","guide_js-preview.md":"d8c75dcf","guide_faq.md":"fc7d1e4f","index.md":"2dfe7e9d","guide_preview-xlsx.md":"0de0ac4e","guide_preview-docx.md":"747caaea","guide_preview-pdf.md":"9bd426ea"}
|
||||
{"guide_contact.md":"10c84e73","config_event.md":"cbedfdd0","config_index.md":"95a7c30b","guide_preview-pdf.md":"9bd426ea","guide_preview-xlsx.md":"0de0ac4e","guide_js-preview.md":"d8c75dcf","index.md":"2dfe7e9d","guide_preview-docx.md":"747caaea","guide_index.md":"59f780b1","guide_faq.md":"fc7d1e4f"}
|
||||
|
File diff suppressed because one or more lines are too long
Loading…
x
Reference in New Issue
Block a user