【发布时间】:2019-11-28 19:27:14
【问题描述】:
ShowInfo : function (number) {
var answer
App.contracts.StudentState.deployed().then(function (instance) {
return instance.showFName(number);
}).then(function (Cert) {
answer = Cert;
})
console.log(answer);
return answer;
},
这是我已经尝试完善了太多时间的功能,但我应该这样做。我是 JavaScript 新手,需要这个函数返回一个名为 answer 的变量,但我总是把它当作未定义的,我知道在 JavaScript 中我不能那么容易地拥有全局变量,但我该如何修复这段代码呢?这与我收到数字的以太坊智能合约相关联。
感谢您的时间和精力。
这些是我目前正在使用的两行代码:
var wrapper = document.getElementById("myHTMLWrapper");
var myHTML = '';
for (var i = 0; i < num; i++) {
var ans = App.ShowInfo(i);
myHTML += '<span class="test">INFO:' + ans + '</span><br/><br/>';
}
wrapper.innerHTML = myHTML
ShowInfo : function (number) {
var answer = App.contracts.StudentState.deployed().then(function (instance) {
return instance.showFName(number);
})
console.log(answer);
return answer;
},
【问题讨论】:
-
你少了一个分号;在 var answer;
-
@GustavoAGarcia the semicolon is optional
-
我了解异步函数的基础知识,但我很难实现这一点,我尝试过为函数创建变量的回调路线,但我最终遇到了 Object Promise 问题和我很快就陷入了困境,也许你可以用我的代码给我一个例子。对不起,如果我有需要...
-
是的,忘了添加它,但它仍然不能解决问题。 ://
标签: javascript blockchain ethereum web3js