/** * 徐立 * 滚动图标选择 */ import React, { Component } from 'react'; import BasicsCard from './Basics'; import { formulaList } from '../excelInitFuc/functionList'; export default class rollTab extends Component { constructor(props){ super(props) this.state = { tabList : [], name : '', // 转存名字 } } componentDidMount(){ this.setState({ tabList:formulaList },()=>{ this.setCloseAll() }) this.props.setPagesTotal(formulaList.length) } // 修改选中样式 setCheckedList = (name) => { const { tabList } = this.state if(name == this.state.name){ let ary = tabList.map(item => { item.isPitch = false item.isShowList = false return item }) this.setState({ tabList:ary, name: '' }) return } let ary = tabList.map(item => { if(item.name == name){ item.isPitch = true item.isShowList = true return item } item.isPitch = false item.isShowList = false return item }) this.setState({ tabList:ary, name }) } // 选中函数后关闭全部 setCloseAll = () => { const { tabList } = this.state let ary = tabList.map(item => { item.isPitch = false item.isShowList = false return item }) this.setState({ tabList:ary, name: '' }) return } render() { const { setPitchOn, // 打开所有函数选择框 setFunction, // 设置函数相关 pages, // 页码 } = this.props const { tabList } = this.state let pageMax = Math.ceil(tabList.lebgth/14) return ( tabList.map((item,i) => { if(i>=(pages==1?1:(pages-1)*13)-1&&i<(pages==pageMax?pageMax*13:pages==1?pages*14:pages*13)){ return<BasicsCard key={i} setCloseAll = { this.setCloseAll } setCheckedList = { this.setCheckedList } item = {item} setFunction={setFunction} setPitchOn={setPitchOn}/> } return null }) ) } }