如何从feathersjs承诺中提取值

时间:2017-06-29 16:56:25

标签: javascript feathersjs

我正在尝试显示aka page.total的服务的计数或数量,并且我已经编写了一些函数来执行此操作。但是,客户端上显示的唯一内容是[object Promise]

HTML:

<div id="number"></div>

公共/ app.js:

myservice = client.service('myservice')

function updateNumber() {
  const myNumber = myservice.find().then(page => page.total);
  document.getElementById('signups').innerHTML = myNumber;
}
myservice.on('created', updateNumber);

1 个答案:

答案 0 :(得分:1)

find返回一个promise对象,即使调用.then我将其设置为innerHTML

有两个选项,在.then调用中设置innerHTML,或使用async / await结构(现在通常由节点支持。)

选项1(.then内):

function updateNumber() {
  myservice.find().then(page => document.getElementById('number').innerHTML = page.total);
}

选项2(异步等待):

async function updateNumber() {
  document.getElementById('number').innerHTML = await myservice.find().then(page => page.total);
}

注意:感谢@steve on featherjs slack #help channel