我无法使用打字稿反应创建上下文

I can't create context with typescript react

如果我使用 .js 而不是 .tsx 则没有问题。但是当我使用打字稿时,它显示此错误“预期 1 个参数,但得到 0 个参数。”。我错过了什么?

context.tsx


import { createContext, useContext} from "react";

const MainContext = createContext();

export {
    MainContext,
    useContext
}

Layout.tsx

const LayoutComponent = ({children}: any) => {

   const [email, setEmail] = useState("");

 const data = {
   email,
   setEmail
 }

  return (
     <MainContext.Provider value={data}>
      <Header />
      {children}
     </MainContext.Provider>
  );
}

createContext 需要默认值

const MainContext = createContext({});

使用默认值

import { createContext, useContext} from "react";

const ctx = createContext({ someData: true })

export const useCtx = () => useContext(ctx)