我想像這樣創建一個代理。正如文檔似乎暗示的那樣,我使用了Reflect.set。function createStore<T>(reducer: Reducer<T>, initialState: T) { const store = new Proxy(initialState, { set(target, key, value) { console.log('Trap has been activated'); return Reflect.set(target, key, value); } });}現在當我設置一個字段時,它確實有效地觸發了這個陷阱。但是,我想在設置值后觸發此陷阱。我嘗試了這個,希望Reflect.set返回我的下一個狀態:const nextState = Reflect.set(target, key, value);// my code herereturn nextState;相反,它返回一個布爾值。有沒有辦法在返回值之前獲取代理的“下一個值”?
在設置值后可靠地運行代理陷阱
瀟湘沐
2023-03-18 16:16:45