Реагируйте на любое разрушение реквизита

#reactjs #typescript #react-props #destructuring

Вопрос:

У меня есть СПЕЦИАЛЬНАЯ оболочка разрешений, она хорошо работает, но я не могу правильно доставлять реквизиты в обернутом компоненте, это похоже на массив[0:{MyInterface}], и это похоже на проблему.

Что я делаю не так? Как я могу разрушать …реквизит и правильно поместить его в обернутый компонент?

Упаковщик:

 export function withPermissionCheck(WrappedComponent, permissionProps: IPermissionSupport, ...props) {  return class PermissionWrapperComponent extends React.Component {  constructor(props) {  super(props);  }   render() {  const isAllowed = permissionProps.permissionValidation(permissionProps.actionName);   switch (permissionProps.workMechanic) {  case PermissionWrapperWorkMechanics.visibleChange: {  if(isAllowed === true)  {  return lt;WrappedComponent {...props}/gt;  }  break;  }   case PermissionWrapperWorkMechanics.readonlyChange: {  const {...prop} = props;   return lt;WrappedComponent disabled={isAllowed} {...prop}/gt;  }  default: {  return lt;WrappedComponent {...props}/gt;  }  }   return null;  }  } }  

Упаковка:

 const preProps = {  key: `await-page-button-${this.props.keySuffix}-${index}`,  withoutMargin: true,  isAwaiting: isAwaiting,  icon: iconJsx,  ...buttonProps  };   const Result = withPermissionCheck(AwaiterButton, permissionWrap, preProps);   return lt;Result/gt;