React 从另一个函数调用一个函数
React call a function from another function
设置简单的图片上传后,我尝试从一个函数调用另一个函数,但日志显示
Unhandled Rejection (TypeError): self.sendImage is not a function
这里是代码
readFile(files) {
var self = this;
if (files && files[0]) {
let formPayLoad = new FormData();
formPayLoad.append("attachment_image", files[0]);
self.sendImage(formPayLoad);
}
}
sendImage(formPayLoad) {
let auth_token = window.localStorage.getItem("auth_token");
fetch("/posts", {
headers: {
Accept: "application/json",
Access: auth_token
},
method: "POST",
body: formPayLoad
})
.then(response => response.json())
}
为了解决这个问题,我尝试将变量 this 更改为 self,但错误仍然存在。
那么,请问有人可以解释一下为什么会出现这个 Unhandles Rejecton 吗?
与class Es6?
相关
您可能需要在构造函数 ex 中绑定函数
this.sendImage = this.sendImage.bind(this);
或者你可以使用 ES6 并使用箭头函数来消除对箭头函数的需要
sendImage = (formPayLoad) => {
let auth_token = window.localStorage.getItem("auth_token");
fetch("/posts", {
headers: {
Accept: "application/json",
Access: auth_token
},
method: "POST",
body: formPayLoad
})
.then(response => response.json())
}
设置简单的图片上传后,我尝试从一个函数调用另一个函数,但日志显示
Unhandled Rejection (TypeError): self.sendImage is not a function
这里是代码
readFile(files) {
var self = this;
if (files && files[0]) {
let formPayLoad = new FormData();
formPayLoad.append("attachment_image", files[0]);
self.sendImage(formPayLoad);
}
}
sendImage(formPayLoad) {
let auth_token = window.localStorage.getItem("auth_token");
fetch("/posts", {
headers: {
Accept: "application/json",
Access: auth_token
},
method: "POST",
body: formPayLoad
})
.then(response => response.json())
}
为了解决这个问题,我尝试将变量 this 更改为 self,但错误仍然存在。
那么,请问有人可以解释一下为什么会出现这个 Unhandles Rejecton 吗? 与class Es6?
相关您可能需要在构造函数 ex 中绑定函数
this.sendImage = this.sendImage.bind(this);
或者你可以使用 ES6 并使用箭头函数来消除对箭头函数的需要
sendImage = (formPayLoad) => {
let auth_token = window.localStorage.getItem("auth_token");
fetch("/posts", {
headers: {
Accept: "application/json",
Access: auth_token
},
method: "POST",
body: formPayLoad
})
.then(response => response.json())
}