我再重新描述一下
首先我接收一個數組
['任務A', '任務B', '任務C', '任務D', '任務E']
此時 我輪詢 任務A
然后我接受第二個數組['任務A', '任務B', '任務C', '任務D', '任務E']
此時我輪詢 任務B
然后我接受第三個數組['任務A', '任務B', '任務C', '任務D', '任務E']
此時我輪詢 任務C
但是如果我接受的第三個數組是['任務A', '任務B', '任務C']
我會輪詢任務C
如果接受的第三個數組是[ '任務B', '任務C']
我會輪詢任務C
如果接受的第三個數組是[ '任務D', '任務E']
前面已經輪詢了任務A 和任務B 所以此時輪詢任務 D
如果接受的第三個數組是['任務A', '任務B','任務E']
此時我輪詢 前面已經輪詢了任務A 和任務B 所以此時輪詢任務 E
剛開始有一個數組 ['任務A', '任務B', '任務C', '任務D', '任務E']
我從 任務A 開始輪詢,從A輪詢到E 再從頭輪詢
但是每過30秒后,這個基礎數組可能是變化的,
比如變成了['任務A', '任務B', '任務C']
或者['任務B', '任務C']或者['任務C']
假設剛開始的任務是['任務A', '任務B', '任務C', '任務D', '任務E']
我從 '任務B' 輪詢到 '任務C' 時,數組突然 ['任務A', '任務B']
那么我就想讓 '任務B' 輪詢到 '任務A'
如果數組變成 ['任務D', '任務E'] 我想從 任務D 開始
import React from 'react';
class Basic extends React.Component {
constructor() {
super();
this.state = {
isShowAll: false, // 這個是控制 要不要 顯示所有任務
hideOneLiIndex: 0,
taskTotalNames: [],
clickLiName: '大屏任務開始'
}
this.handleOnMouseEnter = this.handleOnMouseEnter.bind(this);
this.handleOnMouseLeave = this.handleOnMouseLeave.bind(this);
}
handleOnMouseEnter () {
this.setState({
isShowAll: true
})
}
handleOnMouseLeave () {
this.setState({
isShowAll: false
})
}
renderLi (name, index) {
return (
this.state.hideOneLiIndex !== index
? <li key={name}
className={'on_locking_ul_li'}> {name} </li>
: null)
}
render() {
const taskTotalNames = this.state.taskTotalNames;
return (
<div className={'on_locking_frame'}>
<div className={'on_locking_list'}
onMouseLeave={this.handleOnMouseLeave}
onMouseEnter={this.handleOnMouseEnter}>
{/* 顯示框 */}
<div className={'on_locking_clickLiName'}>
{this.state.clickLiName}
</div>
{/* 下拉列表 */}
{taskTotalNames && taskTotalNames.length != 0?
this.state.isShowAll ? <ul className={'on_locking_ul'}>
{taskTotalNames.map((item, index) => {
return this.renderLi(item, index)
})} </ul> : null : ''
}
</div>
</div>
)
}
componentDidMount() {
const _self = this;
_self.setState({
taskTotalNames: ['任務A', '任務B', '任務C', '任務D', '任務E']
})
const tableTextMap = new Map([
[1, ['任務A', '任務C', '任務D', '任務E'] ],
[2, ['任務A', '任務C', '任務D'] ],
[3, ['任務A', '任務C', '任務D', '任務D', '任務E']],
[4, ['任務A']],
[5, ['任務A', '任務B', '任務C', '任務E']],
[6, ['任務C', '任務D', '任務D', '任務E']]
]);
let start = 1
setInterval(function(){
_self.setState({
taskTotalNames: tableTextMap.get(start)
})
if( start+1 === tableTextMap.length){
start = 0;
} else {
start++;
}
}, 30000 )
}
}
export default Basic;
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數據專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網學院和江蘇省首批服務外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術與教育服務機構,發(fā)展為教育服務業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網
達內教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構,是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經理從事移動互聯(lián)網管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經理職務負責iOS教學及管理工作。
浪潮集團項目經理。精通Java與.NET 技術, 熟練的跨平臺面向對象開發(fā)經驗,技術功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網頁制作和網頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經驗。曾經歷任德國Software AG 技術顧問,美國Dachieve 系統(tǒng)架構師,美國AngelEngineers Inc. 系統(tǒng)架構師。