Как вынуть реквизит, переходящий в функцию Hoc - PullRequest
0 голосов
/ 28 июня 2018

Я пишу withHoc.js, передавая компонент и обернутый компонент:

export const withHoc = ( WrappedComponent, Component ) => class WithHoc extends Component {
  ...
  render() {
    return (
      <WrappedComponent>
        <Component>
      </WrappedComponent>
    )
  }
}

И создайте еще один withWrappedHoc.js, используя styled-component:

const WrappedComponent = styled.div`
  ...
`
export const withWrappedHoc = (Component) => 
  withComponent(Component, WrappedComponent )

withWrappedHoc - это то же самое, что и withHoc, за исключением того, что он заменяет WrappedComponent моим собственным обычаем.

1 Ответ

0 голосов
/ 29 июня 2018

Может быть очень ясно использовать карри для создания паттернов этих функций hoc следующим образом:

export const withHoc = ( WrappedComponent ) => (Component) => class WithHoc extends Component {
  ...
  render() {
    return (
      <WrappedComponent>
        <Component>
      </WrappedComponent>
    )
  }
};


const WrappedComponent = styled.div`
  ...
` 
export const withWrappedHoc = withhoc(WrappedComponent);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...