【发布时间】:2017-09-12 20:17:14
【问题描述】:
我正在尝试在 renderSelect 中获取 PromiseValue。 (在tmp)
问题是我得到了一个承诺,这是正常的行为。但我不明白如何获取 Promise 中的值以便使用它们。
我有一个ApiService 类如下
handleResponse(response) {
if (response.status >= 200 && response.status < 300) {
return response.json();
}
return response.json()
.then((res) => {
throw new Error(res.message);
},
() => {
throw new Error();
});
}
get(url) {
return fetch(`${this.API_URL}${url}`, {
method: 'GET',
headers: this.headers,
})
.then(response => this.handleResponse(response));
}
和我的.jsx 一样
const getOptions = (contractor_employee_id) => {
const apiService = new ApiService()
return apiService
.get(`some_url`)
.then(
response => {
return ["toto", "tata", "titi"]
},
err => (console.log("Failed"))
);
};
const renderSelect = (field) => {
const tmp = getOptions(field.id)
console.log(tmp)
【问题讨论】: