tui-taskKeyStore.js 887 Bytes
class RequestTaskKeyStore {
	constructor(keys = []) {
		this.taskKeyStore = keys
	}
	setRequestTaskStorage(taskArr, taskKey) {
		taskKey && taskArr.push(taskKey)
		this.taskKeyStore = taskArr;
	}
	removeRequestTaskKey(taskKey) {
		if (!taskKey) return;
		let taskArr = [...this.taskKeyStore]
		const index = taskArr.indexOf(taskKey)
		if (~index) {
			taskArr.splice(index, 1)
			this.setRequestTaskStorage(taskArr)
		}
	}
	requestTaskStorage(taskKey) {
		let result = false;
		if (!taskKey) return result;
		let taskArr = [...this.taskKeyStore]
		if (taskArr.length > 0) {
			if (~taskArr.indexOf(taskKey)) {
				result = true;
			} else {
				this.setRequestTaskStorage(taskArr, taskKey)
			}
		} else {
			taskKey && this.setRequestTaskStorage(taskArr, taskKey)
		}
		return result;
	}
}
export default function createTaskKeyStore(keys = []) {
	return new RequestTaskKeyStore(keys)
}