Proxy.revocable() создаёт отзываемый прокси — объект-прокси, который можно навсегда отключить в любой момент его жизненного цикла.
Вызов Proxy.revocable(target, handler) возвращает объект с двумя свойствами:
proxy — объект-прокси для использованияrevoke — функция, которая отключает прокси при вызовеconst { proxy, revoke } = Proxy.revocable(target, handler);
После вызова revoke() прокси становится навсегда отключённым. Любая последующая операция с прокси — такая как чтение или запись свойства — выбросит ошибку TypeError.
revoke();
proxy.someProperty; // TypeError: Cannot perform 'get' on a revoked proxy
revoke можно безопасно вызывать несколько раз без дополнительных ошибокОсновное назначение — контролируемый, временный доступ к объекту. Ключевые сценарии:
Стандартный new Proxy() остаётся активным на протяжении всего своего времени жизни. Proxy.revocable() добавляет возможность явно разорвать эту связь, давая разработчику точный контроль над тем, когда и как удаляется доступ.
Proxy.revocable() возвращает объект, содержащий свойства proxy и revoke, что позволяет тебе контролировать, когда доступ к целевому объекту будет заблокирован.
Новый — ещё не проверен сообществом
Вы