У меня есть следующий компонент HOC, обеспечивающий основу для моего компонента:
import React from 'react'
const FirebaseContext = React.createContext({})
export const withFirebase = <Props extends object>(
Component: React.ComponentType<Props>
): React.ComponentType<Props> =>
class WithFirebase extends React.Component<Props> {
render(): React.ReactNode {
return (
<FirebaseContext.Consumer>
{(firebase): React.ReactNode => (
<Component {...this.props} firebase={firebase} />
)}
</FirebaseContext.Consumer>
)
}
}
export default FirebaseContext
Мой компонент выглядит так:
import React from 'react'
import Firebase, { withFirebase } from '../Firebase'
interface FirebaseInterface {
firebase: Firebase
}
const SignInGoogle: React.FC<FirebaseInterface> = ({ firebase }) => {
//component content
}
export default withFirebase(SignInGoogle)
Но всякий раз, когда я вызываю свой компонент на своей странице, я получаюследующая ошибка: Property 'firebase' is missing in type '{}' but required in type 'FirebaseInterface'
и SignInEmail.tsx(48, 3): 'firebase' is declared here.
(мой компонент)
Firebase предоставляется моим компонентом HOC, так как я могу избавиться от этой ошибки? Что я делаю неправильно?