0

React と accounts-base, accounts-password パッケージを使用してカスタム ログインを実装しようとしています。

登録

handleRegistrationSubmit(event){
        event.preventDefault();
        var email = React.findDOMNode(this.refs.emailInputReg).value.trim();
        var password = React.findDOMNode(this.refs.passwordInputReg).value.trim();
        Accounts.createUser({
            email: email,
            password: password
        })
    },

ログインする

 handleLoginSubmit(event){
        event.preventDefault();
        var email = React.findDOMNode(this.refs.emailInputLogin).value.trim();
        var password = React.findDOMNode(this.refs.passwordInputLogin).value.trim();
        Meteor.loginWithPassword(email, password, function(err){
            if (err){
                console.log(err)
            }
        });
    },

ログアウト

handleLogout(event){
        event.preventDefault();
        Meteor.logout(function(err){
            if(err){
                console.log(err)
            }
        });
    },

登録は正常に機能し、新しいユーザーが作成されてログインされます。コンソールに移動して入力すると

Meteor.users.find().fetch()

_id と email フィールドで作成したばかりのユーザーを返します。

ログアウトすると、メール フィールドが消え、ユーザーには _id フィールドしかありません。

ログインしようとすると、

User not found [403]

メール フィールドのみが削除されているのに、ユーザー オブジェクトが保持されている理由がわかりません。登録とログアウトでエラーは表示されません。なぜこれが起こっているのか分かりません。

ご協力いただきありがとうございます

4

1 に答える 1

0

わかりました..解決しました。ログアウト後にメールのフォーマットが間違っていると削除されてしまうようです。理由はわかりませんが、「test@test.com」で試してみると機能しますが、「test」ではユーザーが作成され、ログアウト後にメールフィールドが削除されます

于 2015-10-29T17:23:03.147 に答える