我想创建一个私人自定义事件,一个其他人无法调度或侦听的事件。我尝试了这个,但它不起作用:
new CustomEvent(Symbol("validate"));
可以吗?
我知道我可以做这样的事情:
new CustomEvent(crypto.randomUUID());
这似乎是可以达到的最大值。
class ObscureEvent {
#name;
#event;
constructor (options) {
this.#name = crypto.randomUUID();
this.#event = new CustomEvent(this.#name, options); }
listen(target, handler) {
target.addEventListener(this.#name, handler); }
dispatch(target) {
target.dispatchEvent(this.#event); } }
const validate = new ObscureEvent({ bubbles: true });