javascript - 在 stingify 文件后调用服务函数。角
问题描述
我需要使用字符串化操作产生的字符串从服务中调用一个函数。但是当我尝试将其称为“this.xmlservice.parsexml”时,它表示此功能不适用于 FileReader。我不知道我什么时候调用 FileReader 类。
HTML:
<input type="file" id="upload" style="display:none" (change)="handleMTPInput($event.target.files)">
JS:
constructor(private fileService: fileService, private xmlservice: XMLservice, private _http: HttpClient, private libservice: libraryService) { }
handleMTPInput(files: FileList) {
if (files.length === 0) {
console.log('No file is selected');
return;
}
var reader = new FileReader();
reader.onload = function (event) {
this.xmlservice.parsexml(event.target.result[0]);
};
reader.readAsText(files[0]);
}
解决方案
请改用箭头函数,以便您的this
上下文是 JS 代码中的类,如下所示:
constructor(private fileService: fileService, private xmlservice: XMLservice, private _http: HttpClient, private libservice: libraryService) { }
handleMTPInput(files: FileList) {
if (files.length === 0) {
console.log('No file is selected');
return;
}
var reader = new FileReader();
reader.onload = (event) => this.xmlservice.parsexml(event.target.result[0]);
reader.readAsText(files[0]);
}
推荐阅读
- python - Django CK Editor 未加载到 Web 托管服务器上,但在 localhost 中工作
- c - 使用“dlsym”访问具有隐藏可见性属性的动态符号
- printing - 如何将复杂矩阵写入文件?
- html - 如何在悬停状态下制作具有不同颜色但颜色相同的文本和图标的按钮?
- robotframework - 机器人框架 - Given When Then 之间的 BDD 依赖关系
- ruby-on-rails - 如果记录需要按特定顺序排列,如何编写 Rails 关联排序?
- javascript - 在 React Native 的初始屏幕上运行功能
- c - 仅为窗口的一部分创建 Vulkan 表面
- java - JcaPEMKeyConverter 由 BouncyCastle 提供,这是一个可选依赖项。要使用对 EC 密钥的支持,您必须显式地将依赖项添加到类路径
- javascript - 使用 Hooks (ReactJS) 更新状态数组