Мне нужны файлы, и чтобы сохранить код в чистоте, я решил передать очень важную функцию, которую я буду использовать в других файлах, в отдельный файл.но мне нужно вызвать эту функцию в основном файле, и я не знаю, как ее передать.Я застрял с этим в течение нескольких часов.Поэтому я ценю любые мысли.
Это файл, который я тоже хочу передать функции:
import React, { Component } from 'react';
import './App.css';
import ERC20ABI from './blockchain/ERC20ABI.js';
import goweb3 from './blockchain/goweb3.js'
import ethweb3 from './blockchain/ethweb3.js'
import parseAddress from './TokenBalance';
class App extends Component {
deploSC = async () => {
const accounts = await goweb3.eth.getAccounts();
//const code = ethweb3.eth.getCode(document.getElementById('smartcontract').value); Not working
goweb3.eth.sendTransaction({
from: accounts[0],
data: document.getElementById('scbytecode').value
}, function(error, hash){
console.log(error,hash);
});
}
render() {
return (
<div className="App">
<header className="App-header">
<p>
Enter the smart contract address:
<input type="text" name="name" placeholder="Smart Contract" value="0" id="smartcontract" className="nice-textbox"/>
<input type ="text" placeholder="Smart Contract Bytecode" name="name" id ="scbytecode"className="nice-textbox"/>
<button id="button" onClick={this.address}>Submit!</button>
<button onClick={this.deploSC}> Deploy Sc</button>
</p>
</header>
</div>
);
}
}
export default App;
Это файл, в котором я создаю функцию:
import ERC20ABI from './blockchain/ERC20ABI.js';
import goweb3 from './blockchain/goweb3.js'
import ethweb3 from './blockchain/ethweb3.js'
export const parseAddress(){
var results
var addresses = [];
var contractObj = new ethweb3.eth.Contract(ERC20ABI,document.getElementById('smartcontract').value));
contractObj.getPastEvents(
'Transfer' || 'allEvents',
{
fromBlock: 0,
toBlock: 'latest'
},
function(err,res){
console.log(err,res);
results = res
}
);
for(var i = 0; i < 10; i++) {
addresses.push([results[i].returnValues.from,results[i].returnValues.value]);
}
console.log(addresses);
console.log(addresses.length)
return addresses
};