如何使用cryptocomapre api来显示BTC的价格?

时间:2019-01-01 11:42:43

标签: api electron bitcoin

我正在开发一个电子应用程序,我正在使用cryptocompare api显示BTC价格,但没有显示。我尝试了所有我能想到的解决方案,希望能得到一些帮助!

const electron = require('electron');
const path = require('path');
const BrowserWindow = electron.remote.BrowserWindow;
const axios = require('axios');

const notifyBtn = document.querySelector('.notify-btn');
const price = document.querySelector('.price');
const targetPrice = document.querySelector('.target-price');

function  getBTC(){
    const cryptos = axios.get('https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=USD&api_key={api_key}')
        price.innerHTML = '$'+cryptos
    }

getBTC();
setInterval(getBTC, 20000);

它给我的输出是'$ [object Promise]'

1 个答案:

答案 0 :(得分:0)

在axios文档中,它说您需要这样做:

axios.get(url)
    .then(function (response) {
        // do something with response
    });

这是因为axios.get返回的值不是响应,而是一个可以解决响应的承诺。 (因此它被强制为字符串[object Promise]。)如果您不知道这是什么意思,请阅读this link。基本上,promise是一种处理需要长时间运行的任务(例如api调用)而又不会阻止其他javascript代码运行的方法。但是无论如何,你想要的是这个

function  getBTC(){
    axios.get('https://min-api.cryptocompare.com/data/price?fsym=BTC&tsyms=USD&api_key={api_key}')
        .then(function(response) {
            var data = response.data;
            var cryptos = // get cryptos from data somehow
            price.innerHTML = '$'+cryptos;
        });
}

我还没有详细阅读axios文档。我相信您正在寻找的是response.data,但我不能不告诉您更多。尝试console.log('Response:', response);来了解响应的结构。