我正在开发一个区 block 链钱包的网络应用程序,我有一个方法可以读取钱包的实时当前余额(来自区 block 链)。阅读完毕后,我更新了一些代表余额的标签(两种不同的硬币类型)。 问题是只有当我刷新页面时才会出现更新。这是函数:
function updateAccountBalance()
{
var accountBalanceILS = @await Model.get_ILS_Balance(); //function in the Model
var accountBalanceETH = @await Model.get_ETH_Balance(); //function in the Model
document.getElementById("ilsBalance").innerHTML = " ₪" + accountBalanceILS +" | ETH" ;
document.getElementById("ethBalance").innerHTML = "" + accountBalanceETH ;
} //just ignore how I use the innerHTML, believe me its working
问题是由于 @await Model.get_ILS_Balance() 和 @await Model.get_ETH_Balance() 造成的。这些功能需要“等待”。如果不是,我就为空。但由于它们,我无法在不刷新页面的情况下更新标签。
我知道他们是问题所在,因为这个例子:
function updateAccountBalance()
{
var accountBalanceILS = 1234.2527; //example
var accountBalanceETH = 151542.2123 //example
document.getElementById("ilsBalance").innerHTML = " ₪" + accountBalanceILS +" | ETH" ;
document.getElementById("ethBalance").innerHTML = "" + accountBalanceETH ;
} //If I just insert random number, it`s working
我会发布函数 get_ILS_Balance 和 get_ETH_Balance 但我不确定是否有必要。 如何解决这个问题并在不刷新页面的情况下进行更新? 如果您需要更多信息或更多代码,请告诉我!!
最佳答案
您还需要异步运行它们。我会考虑使用 Promise。
MDN has a good tutorial关于使用 promise 。
关于javascript - 实时更新标签值不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59310000/