Dinero JS - 货币转换

Dinero JS - Currency Conversion

我正在尝试使用 DineroJs 库:https://dinerojs.com/module-dinero and using the Currency Conversion method : https://dinerojs.com/module-dinero#~convert

我只是想尝试将提供的文档与自定义费率选项结合使用。我的问题是我无法解决作为变量解决的承诺。 async/await 或链接承诺的任何组合都不允许我将货币值分配为变量。这是代码:

  const rates = {
  rates: {
    EUR: 0.81162
  }
}

const value = Dinero({ amount: 500 })
  .convert('EUR', {
    endpoint: new Promise(resolve => resolve(rates))
  }).then(dinero => {
    return dinero.getCurrency() // returns 'EUR'
  })
  .catch(err => {
    // handle errors
  })

我如何return此代码段中“EUR”的值?

如果您想轻松地进行测试,请使用 Dinero 站点上的控制台,因为它启用了库。

只需在 Dinero 之前添加一个 await,见下文。

const rates = {
  rates: {
    EUR: 0.81162
  }
}

const value = await Dinero({ amount: 500 })
  .convert('EUR', {
    endpoint: new Promise(resolve => resolve(rates))
  }).then(dinero => {
    return dinero.getCurrency() // returns 'EUR'
  })
  .catch(err => {
    // handle errors
  })

console.log(value) //prints EUR