使用插件:
docxx npm实现在线预览word文档
官网:npm参数
项目使用:
reViewFile_2(){let body = {"distCodes": [],"startDate": "","endDate": "","county": ""}this.$axios({url: this.$main + "/******",method: "post",data: body,timeout: 180000,responseType: "blob",}).then((res) => {const blob = res.data;docxx.renderAsync(blob, //文档流this.$refs.refWold, //挂载domnull, //样式 { renderFooters:false } //不显示页脚 其他参数参考api);}).catch(() => {this.loading = false;});},
renderAsync(document: Blob | ArrayBuffer | Uint8Array, // could be any type that supported by JSZip.loadAsyncbodyContainer: HTMLElement, //element to render document content,styleContainer: HTMLElement, //element to render document styles, numbeings, fonts. If null, bodyContainer will be used.options: {className: string = "docx", //class name/prefix for default and document style classesinWrapper: boolean = true, //enables rendering of wrapper around document contentignoreWidth: boolean = false, //disables rendering width of pageignoreHeight: boolean = false, //disables rendering height of pageignoreFonts: boolean = false, //disables fonts renderingbreakPages: boolean = true, //enables page breaking on page breaksignoreLastRenderedPageBreak: boolean = true, //disables page breaking on lastRenderedPageBreak elementsexperimental: boolean = false, //enables experimental features (tab stops calculation)trimXmlDeclaration: boolean = true, //if true, xml declaration will be removed from xml documents before parsinguseBase64URL: boolean = false, //if true, images, fonts, etc. will be converted to base 64 URL, otherwise URL.createObjectURL is useduseMathMLPolyfill: boolean = false, //@deprecated includes MathML polyfills for chrome, edge, etc.renderChanges: false, //enables experimental rendering of document changes (inserions/deletions)renderHeaders: true, //enables headers renderingrenderFooters: true, //enables footers renderingrenderFootnotes: true, //enables footnotes renderingrenderEndnotes: true, //enables endnotes renderingdebug: boolean = false, //enables additional logging}): Promise<any>