import React, { Component } from 'react' import PayrollContract from '../build/contracts/Payroll.json' import getWeb3 from './utils/getWeb3' import { Layout, Menu, Spin, Alert } from 'antd'; //import Common from "./components/Common"; //import Accounts from "./components/Accounts"; import Employer from "./components/Employer"; import Employee from "./components/Employee"; // import './css/oswald.css' // import './css/open-sans.css' // import './css/pure-min.css' import 'antd/dist/antd.css'; import './App.css' const { Header, Content, Footer } = Layout; class App extends Component { constructor(props) { super(props) this.state = { web3: null, mode: 'employer' } } componentWillMount() { // Get network provider and web3 instance. // See utils/getWeb3 for more info. getWeb3.then(results => { this.setState({ web3: results.web3 }) // Instantiate contract once web3 provided. this.instantiateContract() }) .catch(() => { console.log('Error finding web3.') }) } instantiateContract() { const contract = require('truffle-contract') const payroll = contract(PayrollContract) payroll.setProvider(this.state.web3.currentProvider) // Get accounts. this.state.web3.eth.getAccounts((error, accounts) => { console.log(accounts); this.setState({ account:accounts && accounts[0] }); payroll.deployed().then((instance) => { this.setState({ payroll:instance }); }); }) } // onSelectAccount=(employee)=>{ // // this.setState({ // selectedAccount:employee.target.text // }); // // } onSelectTab = ({key}) => { this.setState({ mode: key }); } renderContent = () => { const {account, payroll, web3, mode } = this.state; if(!payroll) { return } switch (mode) { case 'employee': return case 'employer': return case 'about': return default: return } } render() { //console.log('call render'); //console.log(this.state); // const {selectedAccount,accounts,payroll,web3}=this.state; // // if(!accounts){ // return
Loading
; // } return (
Ted区块链开发
雇主 雇员 关于
{this.renderContent()}
); } } export default App