使用 React Native 连接到 Stitch

Connect to Stitch with React Native

我尝试初始化 Stitch 默认应用程序客户端,但在初始化客户端时总是出现错误。

这是我的代码:

import React from 'react';
import {View, Text, SafeAreaView} from 'react-native';
import {Stitch, AnonymousCredential} from 'mongodb-stitch-react-native-sdk';

class App extends React.Component {
  render() {
    return (
      <SafeAreaView>
        <View>
          <Text>Stitch Test</Text>
        </View>
      </SafeAreaView>
    );
  }

  async componentDidMount() {
    console.log('=> App/componentDidMount');
    await this._loadClient();
  }

  _loadClient() {
    console.log('=> App/_loadClient');

    Stitch.initializeDefaultAppClient('tuto - nbmzq').then(client => {
      if (client.auth.isLoggedIn) {
        client.auth
          .loginWithCredential(new AnonymousCredential())
          .then(user => {
            console.log('Successfully logged in as user ${user.id}');
          })
          .catch(err => {
            console.log(err);
          });
      } else {
        console.log(client);
        console.log('Error initialize Client');     // Always fall here
      }
    });
  }
}

export default App;

应用 ID 存在,我可以在 MongoDB 网站上连接它。 我哪里错了?

感谢 ++ 埃里克

Stitch.initializeDefaultAppClient后测试有bug。

一定是

if (client.auth.hasDeviceId) { ... }

而不是

if (client.auth.isLoggedIn) { ... }

这总是错误的,因为client.auth是在测试之后做出的。