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
正しい場所に返されます。
私は何を間違っていますか?ありがとう