app/Resources/static-src/app/common/component/multi-input/index.js

(开头部分) 1KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

import React, { Component } from 'react';
import List from './list';
import InputGroup from './input-group';
import { getRandomString } from './part';
import '!style-loader?insertAt=top!css-loader!less-loader!./style.less';

function initItem(dataSourceUi, value) {
  let item = {
    itemId: getRandomString(),
    label: value,
    outputValue: value
  };
  dataSourceUi.push(item);
}

function removeItem(dataSourceUi, itemId) {
  for (let i = 0; i < dataSourceUi.length; i++) {
    if (dataSourceUi[i].itemId == itemId) {
      dataSourceUi.splice(i, 1);
      break;
    } 
  }
}

function updateItemSeq(sortDatas, dataSourceUi) {
  let temps = [];
  for (let i = 0; i < sortDatas.length; i++) {
    for (let j = 0; j < dataSourceUi.length; j++) {
      if (sortDatas[i] == dataSourceUi[j].itemId) {
        temps.push(dataSourceUi[j]);
        break;
      }
    }
  }
  return temps;
}

export default class MultiInput extends Component {
  constructor(props) {
    super(props);
  }

  componentWillMount() {
    this.state = {
      dataSourceUi: [],
    }
    this.props.dataSource.map((item, index) => {
      initItem(this.state.dataSourceUi, item);
    })

    console.log({'initItem after':this.state.dataSourceUi})
  }

  getChildContext() {
    return {
      removeItem: this.removeItem,
      sortItem: this.sortItem,
      addItem: this.addItem,
      addable: this.props.addable,
      searchable: this.props.searchable,

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。