1

HOC を使用しているコンポーネントがあります。HOC には this.context が必要ですが、何らかの理由で this.context が渡されていません。私は何を間違っていますか?タイ

成分:

import React, { Component } from 'react';
import withTracking from './hocs/withTracking';

class NamePage extends Component {
  componentDidMount() {
    console.log(this.context.mixpanel) // WORKS
  }
  render() {
    return (
      ...
    );
  }
}

NamePage.contextTypes = {
  mixpanel: PropTypes.object.isRequired
};

export default withTracking('View Page: NamePage')(NamePage);

ホック

import { lifecycle } from 'recompose';

export function withTracking(eventTitle) {
    return lifecycle({
        componentDidMount() {
          console.log(this.context.mixpanel) // UNDEFINED - fail-y?
        }
    });
}

export default withTracking;

コンポーネントに出力すると、 console.log がundefined正しい場所に返されます。

私は何を間違っていますか?ありがとう

4

1 に答える 1