Làm thế nào một cái gì đó có thể tương đương với lock C # có thể được triển khai trong JavaScript?
Vì vậy, để giải thích những gì tôi đang nghĩ, một trường hợp sử dụng đơn giản là:
Người dùng nhấp vào nút B. Btăng một sự kiện onclick. Nếu Blà trong event-statesự kiện, hãy đợi Bở trong ready-statetrước khi tuyên truyền. Nếu Bở trong ready-state, Bbị khóa và được đặt thành event-state, thì sự kiện sẽ lan truyền. Khi quá trình truyền của sự kiện hoàn tất, Bđược đặt thành ready-state.
Tôi có thể thấy điều gì đó gần với điều này có thể được thực hiện như thế nào, chỉ đơn giản bằng cách thêm và xóa lớp ready-statekhỏi nút. Tuy nhiên, vấn đề là người dùng có thể nhấp vào một nút hai lần liên tiếp nhanh hơn so với biến có thể được đặt, vì vậy nỗ lực khóa này sẽ không thành công trong một số trường hợp.
Có ai biết cách triển khai một khóa không bị lỗi trong JavaScript không?