I have some Promises:
getJson = new Promise((resolve, reject) => {
$.getJSON(abiJson)
.done(abi => {
resolve(abi);
})
.fail(() => {
reject('Eror loading ABI '+name);
});
});
initWeb3 = () => {
return new Promise((resolve, reject) => {
(typeof web3 !== 'undefined') ?
resolve(new Web3(web3.currentProvider)):
reject('No find wallet, or web3 is undefined!');
});
}
initContract = () => {
return new Promise((resolve) => {
resolve(web3.eth.contract(abi).at(address));
});
}
initWallet = () => {
return new Promise((resolve, reject) => {
(window.web3.currentProvider.isMetaMask) ? resolve('Metamask') :
(window.web3.currentProvider.isTrust) ? resolve('Trust') :
(window.web3.currentProvider.constructor.name === 'EthereumProvider') ? resolve('Mist') :
(window.web3.currentProvider.constructor.name === 'Web3FrameProvider') ? resolve('Parity') :
reject('Not suported wallet');
});
}
initAccount = () => {
return new Promise((resolve, reject) => {
(typeof web3.eth.accounts[0] !== 'undefined') ?
resolve(web3.eth.accounts[0]) :
reject('Please login to the wallet');
});
}
Help me to write promise chain correctly.
First of all I need to getJson
and write resolve to some var
Then i need initWeb3()
and write resolve to some var
Then initContract()
, but I need get abi from getJson
and send it to initContract()
and write resolve to some var
Then initWallet()
and write resolve to some var
And initAccount()
and write resolve to some var
Help me to write promise chain correctly, and tell me please this is good code or 'shitcode'?