METEOR:注销后如何重定向

METEOR: how to redirect after logout

我对 Meteor & React 很陌生。在这里,只要按下注销按钮,我想将当前用户重定向到主页。您可以在附件中看到带有注销按钮的受保护页面模板。

请注意,我使用的是最新版本(Meteor 1.6.1 和 React V4)。

import React from 'react';
import { Accounts } from 'meteor/accounts-base';

export default class Link extends React.Component{
  onLogout(){
    Accounts.logout()
  };
  render(){
    return(
      <div>
        <p>Private Content goes here</p>
        <button onClick={this.onLogout.bind(this)}>Logout</button>
      </div>
    );
  }
};

我们将不胜感激。

这里主要使用两个选项:

1。将回调传递给 Accounts.logout(func)

这是最简单的,但是将 return 行为混合到您的组件中,这并不理想。

2。使用 Accounts.onLogout(func)

您可以将其与帐户初始化或路由器代码放在一起,以最适合您的应用程序的逻辑分组为准。


在该回调中,您需要使用路由器进行重定向。确切的语法将取决于您的路由器,但通常看起来像:

Router.go('/')

另一种方式,如果您通过 meteor-useraccounts 方式设置...

const myLogoutFunc = function() {
  FlowRouter.go('/login');
}

AccountsTemplates.configure({
  // Hooks
  onLogoutHook: myLogoutFunc,
  onSubmitHook: mySubmitFunc,
  preSignUpHook: myPreSubmitFunc,
  postSignUpHook: myPostSubmitFunc,
});

模板事件代码是这样的..

'click .logout': () => {
  AccountsTemplates.logout();
}

在此处详细阅读https://github.com/meteor-useraccounts/core/blob/master/Guide.md