Сразу по первой функции
1. workers объявлена, но нигде не используется,
const workers = [
{
name: 'Mike',
work: 'Google',
id: 0
}
];
Тогда уж поместить внутрь возвращаемого объекта
return {
workers: [{
name: 'Mike',
work: 'Google',
id: 0
}],
2. Вместо
addWorker(worker) {
worker.id = workers.length;
workers.push(worker);
},
кошернее
addWorker(worker) {worker.id = workers.push(worker);}
чтобы нумерация начиналась с единицы а не с нуля. Либо
addWorker(worker) {workers.push([...worker, id: workers.length + 1]);}
3. функцию removeWorker проще и рациональней переписать в виде
removeWorker(worker) {
const id = Number(worker.dataset.id);
const index = workers.findIndex(item => item.id === id);
workers.splice(index, 1);
},
4. Код функции isWorkerEmpty можно сократить
isWorkerEmpty(worker) {return Object.values(worker).every(v=>v);}
5. Почему функция возвращения workers называется getUsers не очень понятно.