ElementGroup.js 1.16 KB
import React from 'react'
import Element from './Element'
import ReactAddonsUpdate from 'react-addons-update'
import autobind from 'autobind-decorator'
import { observer } from 'mobx-react'

@autobind
@observer
export default class ElementGroup extends React.Component {
  cloneElement(element) {
    this.props.ElementGroupStore.cloneElement(element)
  }

  deleteElement(element) {
    this.props.ElementGroupStore.deleteElement(element)
  }

  // 返回element的index为-1, 删除最后一个元素
  deleteLastElement() {
    this.props.ElementGroupStore.deleteLastElement()
  }

  sidebar() {
    return document.getElementById('sidebar')
  }

  render() {
    return (
      <div>
        {
          this.props.ElementGroupStore.elements.map(function(element) {
            return (
              <Element meta_element={ element } key={ "key_" + element.id } id={ element.id } name={ element.name } initialPos={ element.initialPos } target_type={ element.target_type } handleCloneElement={ this.cloneElement } handleDeleteElement={ this.deleteElement } handleDeleteLastElement={ this.deleteLastElement } />
            )
          }.bind(this))
        }
      </div>
    )
  }
}