我正在尝试使用web3监视第12个确认。我使用以下代码:
let filter = web3.eth.filter('latest',
filter.watch(function(error, result) {
if (!error) {
let confirmedBlock = web3.eth.getBlock(web3.eth.blockNumber - 11)
if (confirmedBlock.transactions.length > 0) {
confirmedBlock.transactions.forEach(function(txId) {
let transaction = web3.eth.getTransaction(txId)
if (transaction.to == account) {
// Do something useful.
console.log("12 confirmations received");
}
})
}
}
});
但这会引发错误web3.eth.filter is not a function
。
答案 0 :(得分:2)
您似乎正在使用web3.js v1.0。在v1中订阅新块标题信息的方法是web3.eth.subscribe('newBlockHeaders', callback);
有关更多信息,请参见the docs。