Const 不能在反应中定义
Const cannot define in react
我无法在 react 中定义 const。
启动网络浏览器后,在控制台命令中输入 accounts
时出现错误。
>accounts
VM768:1 Uncaught ReferenceError: accounts is not defined
at <anonymous>:1:1
(anonymous) @ VM768:1
我认为这是Web3
错误,所以我在控制台命令中定义了accounts
。
但是我可以定义 accounts
.
>const accounts = web3.eth.accounts[0]
<undefined
>accounts
<"0xeb827c448545--------1a7d5ced86ac3"
我想通过this.state.account
显示地址。
请问有什么建议吗?
import React, { Component } from 'react';
import Web3 from 'web3';
import './App.css';
class App extends Component {
conponentWillmount() {
this.loadBlockchainData()
}
async loadBlockchainData() {
const web3 = new Web3(Web3.givenProvider || "http://localhost:7545")
const network = await web3.eth.net.getNetworkType()
console.log("network:", network)
const accounts = await web3.eth.accounts[0]
this.state({ account: accounts[0]})
console.log("account:", accounts[0])
// Fetch Account
}
constructor(props) {
super(props)
this.state = { account: ''}
}
render() {
return (
<div className="container">
<h1>Hello world</h1>
<p>Your account : {this.state.account} </p>
</div>
);
}
}
export default App;
const accounts = await web3.eth.accounts[0]
变量是 loadBlockchainData
方法的局部变量。无法从控制台命令行访问它,因为从那里只能访问全局变量。
如果accounts
需要在浏览器开发工具中调试,可以在loadBlockchainData
里面设置断点。
我无法在 react 中定义 const。
启动网络浏览器后,在控制台命令中输入 accounts
时出现错误。
>accounts
VM768:1 Uncaught ReferenceError: accounts is not defined
at <anonymous>:1:1
(anonymous) @ VM768:1
我认为这是Web3
错误,所以我在控制台命令中定义了accounts
。
但是我可以定义 accounts
.
>const accounts = web3.eth.accounts[0]
<undefined
>accounts
<"0xeb827c448545--------1a7d5ced86ac3"
我想通过this.state.account
显示地址。
请问有什么建议吗?
import React, { Component } from 'react';
import Web3 from 'web3';
import './App.css';
class App extends Component {
conponentWillmount() {
this.loadBlockchainData()
}
async loadBlockchainData() {
const web3 = new Web3(Web3.givenProvider || "http://localhost:7545")
const network = await web3.eth.net.getNetworkType()
console.log("network:", network)
const accounts = await web3.eth.accounts[0]
this.state({ account: accounts[0]})
console.log("account:", accounts[0])
// Fetch Account
}
constructor(props) {
super(props)
this.state = { account: ''}
}
render() {
return (
<div className="container">
<h1>Hello world</h1>
<p>Your account : {this.state.account} </p>
</div>
);
}
}
export default App;
const accounts = await web3.eth.accounts[0]
变量是 loadBlockchainData
方法的局部变量。无法从控制台命令行访问它,因为从那里只能访问全局变量。
如果accounts
需要在浏览器开发工具中调试,可以在loadBlockchainData
里面设置断点。