0

我正在使用 Reaml、Apollo Client 和 React.js 教程关注任务跟踪器(Web), 并且我正在获取用户项目。下面是我的代码

export default function TaskApp() {
  const app = useRealmApp();
  console.log(app.currentUser.customData)
  const [currentProject, setCurrentProject] = React.useState(
    // set the current project as  "My Project"
    app.currentUser.customData.memberOf[0]
  );
  const [isEditingPermissions, setIsEditingPermissions] = React.useState(false);
  return (
    <Container>
      <Sidebar
        css={gridAreaSidebar}
        currentProject={currentProject}
        setCurrentProject={setCurrentProject}
        setIsEditingPermissions={setIsEditingPermissions}
      ></Sidebar>
      <ProjectScreen
        css={gridAreaMain}
        currentProject={currentProject}
        isEditingPermissions={isEditingPermissions}
        setIsEditingPermissions={setIsEditingPermissions}
      />
    </Container>
  );
}

以下是出现的错误,我不明白为什么会出现错误

TypeError: Cannot read properties of undefined (reading '0')
TaskApp
E:/Web Dev/Realm/realm-tutorial-web/src/TaskApp.js:13
  10 | console.log(app.currentUser.customData)
  11 | const [currentProject, setCurrentProject] = React.useState(
  12 |   // set the current project as  "My Project"
> 13 |   app.currentUser.customData.memberOf[0]
     | ^  14 | );
  15 | const [isEditingPermissions, setIsEditingPermissions] = React.useState(false);
  16 | return (

我还是新手,所以请尽可能提供帮助。

4

1 回答 1

1

您是否有机会通过单击“Realm 应用程序”网页中的“从模板创建应用程序”->“GraphQL + React App Boilerplate”来开始本教程?这就是我所做的,我遇到了同样的错误。创建的后端模板缺少用户模式和大多数服务器端功能。

当我从“设置后端”部分开始时,使用 CLI 界面创建后端 ( https://docs.mongodb.com/realm/tutorial/realm-app/ ),然后转到“设置后端”部分Web 应用程序,一切都按预期工作。

于 2021-10-13T00:20:35.930 回答