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)
}