Advertisement
Guest User

Untitled

a guest
Jul 18th, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. type FormCallback = (event: React.FormEvent<any>) => void;
  2. interface CallbackMap {
  3.   [stateKey: string]: FormCallback;
  4. }
  5.  
  6. class CallbackFarm {
  7.   constructor(readonly component: React.Component) {}
  8.   updateFromTarget(stateKey: string): FormCallback {
  9.     if (stateKey not in this.registeredCallbacks) {
  10.       this.registeredCallbacks[stateKey] = (event: React.FormEvent<any>) => {
  11.         this.component.setState({[stateKey]: event.currentTarget.value});
  12.       };
  13.     }
  14.     return this.registeredCallbacks[stateKey];
  15.   }
  16.   private registeredCallbacks: {[stateKey: string]: (event: React.FormEvent<any>) => void} = {};
  17. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement