【问题标题】:Firebase issue with react-snapreact-snap 的 Firebase 问题
【发布时间】:2020-12-02 00:26:42
【问题描述】:

我试图从主页上的 firebase 加载项目,但它一直给我一个错误。有人有什么建议吗?

我正在关注https://github.com/stereobooster/react-snap上的指南

并像这样实现它:


import React from 'react';
import {hydrate, render } from 'react-dom';
import './index.css';
import App from './components/App';
import * as serviceWorker from './serviceWorker';
import FirebaseProvider from './utils/firebase'

const rootElement = document.getElementById("root");
if (rootElement?.hasChildNodes()) {
  hydrate( <FirebaseProvider><App /> </FirebaseProvider> , rootElement);
} else {
  render(<FirebaseProvider><App /> </FirebaseProvider> , rootElement);
}

这是错误:

TypeScript error in /Users/bigbot/Desktop/buyid/src/index.tsx(11,12):
This JSX tag's 'children' prop expects a single child of type 'ReactElement<any, string | ((props: any) => ReactElement<any, string | ... | (new (props: any) => Component<any, any, any>)> | null) | (new (props: any) => Component<any, any, any>)>', but multiple children were provided.  TS2746

     9 | const rootElement = document.getElementById("root");
    10 | if (rootElement?.hasChildNodes()) {
  > 11 |   hydrate(<FirebaseProvider> <App /> </FirebaseProvider>, rootElement);
       |            ^
    12 | } else {
    13 |   render(<FirebaseProvider><App /></FirebaseProvider>, rootElement);
    14 | }

【问题讨论】:

    标签: reactjs typescript firebase react-snap


    【解决方案1】:

    还有一个额外的 ?在你的代码中。 我建议你尝试改变

    if (rootElement?.hasChildNodes()) {
      hydrate( <FirebaseProvider><App /> </FirebaseProvider> , rootElement);
    } else {
      render(<FirebaseProvider><App /> </FirebaseProvider> , rootElement);
    }
    

    if (rootElement.hasChildNodes()) {
      hydrate(<App />, rootElement);
    } else {
      render(<App />, rootElement);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-17
      • 1970-01-01
      • 2022-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多