import React, {Component} from 'react'
|
import PropTypes from 'prop-types'
|
import { Transfer } from 'antd'
|
import './index.scss'
|
|
class TransferForm extends Component {
|
static propTypes = {
|
menulist: PropTypes.array,
|
dict: PropTypes.object, // 字典项
|
}
|
|
state = {
|
targetKeys: [],
|
selectedKeys: []
|
}
|
|
handleChange = (nextTargetKeys, direction, moveKeys) => {
|
this.setState({ targetKeys: nextTargetKeys })
|
}
|
|
handleSelectChange = (sourceSelectedKeys, targetSelectedKeys) => {
|
this.setState({ selectedKeys: [...sourceSelectedKeys, ...targetSelectedKeys] })
|
}
|
|
render() {
|
const { targetKeys, selectedKeys } = this.state
|
return (
|
<div className="trawmenutransfer">
|
<Transfer
|
dataSource={this.props.menulist}
|
titles={[this.props.dict['header.menu.thawmenu.source'], this.props.dict['header.menu.thawmenu.target']]}
|
targetKeys={targetKeys}
|
locale={{itemUnit: this.props.dict['header.menu.thawmenu.itemUnit'], itemsUnit: this.props.dict['header.menu.thawmenu.itemsUnit']}}
|
selectedKeys={selectedKeys}
|
onChange={this.handleChange}
|
onSelectChange={this.handleSelectChange}
|
render={item => item.title}
|
/>
|
</div>
|
)
|
}
|
}
|
|
export default TransferForm
|