angular - 如何使用从 papaparse 中的完整功能获得的结果/数据进行 http 发布?
问题描述
我基本上收到以下错误
Cannot read property 'post' of undefined
我的代码如下:
export class AppComponent {
constructor(public http: HttpClient, private papa: PapaParseService) {}
results:any;
createOrders(csvData) {
this.http.post(environment.ordersUrl, {'order': csvData})
.toPromise().then((data)=> console.log(data));
}
handleFileSelect(evt) {
let file = evt.target.files[0];
this.papa.parse(file, {
header: true,
dynamicTyping: true,
complete: function(csvOrders) {
this.http.post(environment.ordersUrl, {'order': csvOrders.data}).subscribe();
}
});
}
}
解决方案
您正在调用的完整函数内部具有不同的范围,因此不同this
。
您可以使用胖箭头函数:
complete: csvOrders => {
...
}
或者绑定this
到函数:
complete: function(csvOrders) {
...
}.bind(this)
推荐阅读
- powershell - PowerShell:使用 MS Edge 而不是 IE 自动登录网站会引发错误
- flutter - Flutter:提供程序监视 udpates 和 navigator pop
- graphics - 如何将二维坐标列表缩放到所需大小
- python - 如何在选择排序中打印索引
- python - 打印所有可能的字符串列表的python代码,这些字符串可以由一个给定的字符串组成
- python - ValueError:无法将非有限值(NA 或 inf)转换为整数。在 colab.google 中
- python - 在 Pandas Python 中复制行
- python - 关于读取excel的数据框问题
- java - 试图执行一个jar文件,有问题
- android - 依赖下拉列表的第二个下拉列表仅在热重新加载后加载数据