import React, { Component } from 'react'; import '../content.less'; import LeftTab from './leftTab'; import TechAchievement from './techAchievement'; class Content extends Component { constructor() { super(); this.state = { loading: false, component: 'div' }; } componentWillMount() { if (window.location.hash) { this.getKey(window.location.hash.substr(1)); } else { this.getKey("orgTechAchievement"); }; } getKey(key) { switch (key) { case 'orgTechAchievement': require.ensure([], () => { const TechAchievement = require('./techAchievement').default; this.setState({ component: TechAchievement, listApiUrl: '/api/admin/achievement/orgList', detailApiUrl: '/api/admin/achievement/orgDetail' }); }); break; case 'userTechAchievement': require.ensure([], () => { const TechAchievement = require('./techAchievement').default; this.setState({ component: TechAchievement, listApiUrl: '/api/admin/achievement/userList', detailApiUrl: '/api/admin/achievement/userDetail' }); }); break; case 'userAchievementOrder': require.ensure([], () => { const AchievementOrder = require('./achievementOrder').default; this.setState({ component: AchievementOrder, listApiUrl: '/api/admin/portal/order/userAchievementOrderList', detailApiUrl: '/api/admin/achievement/userDetail' }); }); break; case 'orgAchievementOrder': require.ensure([], () => { const AchievementOrder = require('./achievementOrder').default; this.setState({ component: AchievementOrder, listApiUrl: '/api/admin/portal/order/orgAchievementOrderList', detailApiUrl: '/api/admin/achievement/orgDetail' }); }); break; }; window.location.hash = key; } render() { return ( <div className="manage-content"> <LeftTab handlekey={this.getKey.bind(this)} /> <div className="content-right"> <this.state.component data-listApiUrl={this.state.listApiUrl} data-detailApiUrl={this.state.detailApiUrl} /> </div> </div> ) } } export default Content;