我正在尝试将庞大的npm库与流星集成。
使用导入命令时, 来自"猛犸象" 的 导入{mammoth}
未捕获的TypeError:无法读取属性' bind'未定义的
使用命令时 声明var mammoth:any; 正在
异常:猛犸象未定义
我正在使用的代码是
sudo chown 1000 efs/

this.readFileInputEventAsArrayBuffer(event, function(arrayBuffer) {
mammoth
.convertToHtml({ arrayBuffer: arrayBuffer })
.then(function(result: any) {
var html = result.value; // The generated HTML
var messages = result.messages; // Any messages, such as warnings during conversion
// console.log('html: ' + html);
document.getElementById("output").innerHTML = html;
var elements = document.getElementById("output").children;
console.log(elements);
console.log(JSON.stringify(elements));
console.log(elements.length);
for (var i = 0; i < elements.length; i++) {
console.log(i + " --- ");
console.log(elements[i]);
var data = elements[i].innerHTML;
// elements[i].setAttribute("draggable","true");
}
})
.done();
console.log(
"event in fileUpload-readFileInputEventAsArrayBuffer" + event
);
});
&#13;
使用导入时
声明var mammoth:any;
得到错误
readFileInputEventAsArrayBuffer(event, callback) {
var file = event.target.files[0];
var reader = new FileReader();
reader.onload = function(loadEvent: any) {
var arrayBuffer = loadEvent.target.result;
console.log("arrayBuffer: ");
console.log(arrayBuffer);
callback(arrayBuffer);
};
reader.readAsArrayBuffer(file);
}
使用导入时
从&#34; mammoth&#34 ;;
导入{mammoth}得到错误
ReferenceError: mammoth is not defined
at app.component.ts:75
at FileReader.reader.onload (app.component.ts:109)
at ZoneDelegate.invoke (modules.js:22723)
at Object.onInvoke (modules.js:57096)
at ZoneDelegate.invoke (modules.js:22722)
at Zone.runGuarded (modules.js:22607)
at FileReader.<anonymous> (modules.js:22585)
Uncaught ReferenceError: mammoth is not defined
at app.component.ts:75
at FileReader.reader.onload (app.component.ts:109)
at ZoneDelegate.invoke (modules.js:22723)
at Object.onInvoke (modules.js:57096)
at ZoneDelegate.invoke (modules.js:22722)
at Zone.runGuarded (modules.js:22607)
at FileReader.<anonymous> (modules.js:22585)
请帮忙。
P.S。:当作为角项目运行时,它工作正常。面对 这个问题,在角度流星项目中进行。
答案 0 :(得分:0)
如果你查看庞大的npm包的源代码,你会发现没有'猛犸象'也没有默认导出。但是,它会导出每个方法,因此您可以这样做:
import {convertToHtml} from "mammoth";
convertToHtml({path: "path/to/document.docx"})
.then(function(result){
var html = result.value; // The generated HTML
var messages = result.messages; // Any messages, such as warnings during conversion
})
.done();
应该这样做:)
答案 1 :(得分:0)
尝试看看是否可行:import 'mammoth/mammoth.browser';
(浏览器版本)
或者,如果您可能想在前端执行此操作,则可以使用以下脚本,然后将以下脚本包含到html页面中,并在运行时执行。 (将文档转换为html并进行渲染)
要包含的脚本:
希望这会有所帮助。
答案 2 :(得分:0)
尝试这样导入:
import {convertToHtml} from 'mammoth/mammoth.browser';
内部componet.ts文件:
import {convertToHtml} from "mammoth/mammoth.browser";
convertToHtml({ arrayBuffer: arrayBuffer })
.then(function(result){
var html = result.value; // The generated HTML
var messages = result.messages; // Any messages, such as warnings during conversion
})
.done();
以上代码对我来说适用于角度9。