我有以下代码
httpcsv2Array(event) {
var gethttpcsv =
Papa.parse('https://docs.google.com/spreadsheets/d/e/yadyada/pub?output=csv', {
download: true,
header: true,
dynamicTyping: true//,
complete: this.importhttpcsv
});
}
importhttpcsv(results) {
this.bformservice.deleteAll();
results.data.forEach(item => {
let tarr = item as bform;
this.bformservice.bulkcreatebform(tarr);
});
}
看来importhttpcsv是在papa.parse的上下文中启动的,因为我得到了错误: TypeError:无法读取属性' deleteAll'未定义的
我可以在同一个类的其他函数中使用this.bformservice.deleteAll()。
我需要访问不同服务中的函数才能更新数据库。有什么方法吗?
谢谢
答案 0 :(得分:2)
需要使用Arrow function
假装正确this
complete: () => {
this.importhttpcsv();
}