Свойство 'firebase' не существует для типа '{children ?: ReactNode;} 'как правильно аннотировать? - PullRequest
0 голосов
/ 22 октября 2019

Я предоставляю свой объект firebase через компонент более высокого порядка, например:

const FirebaseContextInterfaceLocal: FirebaseContextInterface = {
  value: new Firebase()
}

ReactDOM.render(
  <Router history={history}>
    <FirebaseContext.Provider value={FirebaseContextInterfaceLocal}>
      <App />
    </FirebaseContext.Provider>
  </Router>,
  document.getElementById('root')
)

И после этого я использую его так:

const ForgotPassword: React.FC = ({ firebase }) => {

}

export default withFirebase(ForgotPassword)

Но яя получаю следующую ошибку:

Property 'firebase' does not exist on type '{ children?: ReactNode; }'.

Я пытаюсь выяснить, как правильно это комментировать, но не могу найти хорошего объяснения. Любая помощь будет очень ценится!

1 Ответ

0 голосов
/ 22 октября 2019

используйте value ключ вместо firebase

const ForgotPassword: React.FC = ({ value }) => {

}

export default withFirebase(ForgotPassword)

или попробуйте изменить свойство FirebaseContextInterfaceLocal на:

const FirebaseContextInterfaceLocal = {
  firebase: new Firebase()
}

ReactDOM.render(
  <Router history={history}>
    <FirebaseContext.Provider firebase={FirebaseContextInterfaceLocal.firebase}>
      <App />
    </FirebaseContext.Provider>
  </Router>,
  document.getElementById('root')
)

Таким образом, вы можете сделать это:

const ForgotPassword: React.FC = ({ firebase }) => {

}

export default withFirebase(ForgotPassword)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...