javascript Promise:不了解如何从Promise中获得价值

时间:2018-11-29 00:25:43

标签: javascript promise

我在理解如何从javascript的承诺中获得价值方面遇到困难。

我具有以下功能:

const getProjectById = (id) => {
  return fetch(`/api/project/${id}`)
    .then((response) => response.json());
}


const getProjectNameFromId = (id) => {
  let name = 'blah';
  getProjectById(id).then((result) => {name = result.name;});
  return name;
}

在浏览器的JavaScript控制台中,我输入了以下功能,并确认当我执行类似操作时

let test = getProjectById("52");

它返回一个承诺,然后解析为预期的信息。

我想调用getProjectNameFromId()来获得一个项目名称,然后我可以将其作为道具传递给React对象。但是,总是返回getProjectNameFromId()而不是'blah'返回实际的项目名称。

我知道诺言是异步的,因此这对我不起作用。但是我只是不知道如何正确地做到这一点。

0 个答案:

没有答案