|
|
@@ -3,46 +3,20 @@ import { Input, Select, Icon, Button } from 'antd';
|
|
|
import emitter from '../../eventManger/ev';
|
|
|
const Option = Select.Option;
|
|
|
import './header.less';
|
|
|
+import { connect } from 'dva';
|
|
|
+import title from '../../models/title';
|
|
|
|
|
|
-class Header extends React.Component {
|
|
|
- constructor(props) {
|
|
|
- super(props);
|
|
|
- this.state = {
|
|
|
- title: props.chartTitle || '未命名'
|
|
|
- };
|
|
|
- }
|
|
|
|
|
|
- componentDidMount() {
|
|
|
- // 在组件装载完成后发布事件
|
|
|
- this.eventEmitter = emitter.addListener('headersettitle', (title)=>{
|
|
|
- this.setState({
|
|
|
- title
|
|
|
- });
|
|
|
- });
|
|
|
- }
|
|
|
-
|
|
|
- componentWillUnmount() {
|
|
|
- emitter.removeAllListeners('headersettitle');
|
|
|
- }
|
|
|
-
|
|
|
- emit(eventName, params) {
|
|
|
- emitter.emit(eventName);
|
|
|
- }
|
|
|
-
|
|
|
- titleChange() {
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- render() {
|
|
|
- const { emptyTitle, title } = this.state;
|
|
|
-
|
|
|
- return <div className='header'>
|
|
|
+const Header = connect(({ title: { title } }) => ({
|
|
|
+ title,
|
|
|
+}))(props => {
|
|
|
+ return (
|
|
|
+ <div className='header'>
|
|
|
<div className='header-item toolbar-title'>
|
|
|
<Input className='input-title'
|
|
|
width={200}
|
|
|
- addonAfter={<Icon type="edit" />}
|
|
|
- value={title}
|
|
|
- onChange={this.titleChange}
|
|
|
+ addonAfter={<Icon type="edit" onClick={props.dispatch({ type: 'title/set', text: '测试标题' })}/>}
|
|
|
+ value={props.title}
|
|
|
/>
|
|
|
</div>
|
|
|
<div className='header-item toolbar-buttons'>
|
|
|
@@ -54,7 +28,7 @@ class Header extends React.Component {
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
- }
|
|
|
-}
|
|
|
+ )
|
|
|
+});
|
|
|
|
|
|
export default Header;
|