Meteor - 帐户

Meteor - 帐户 首页 / Meteor入门教程 / Meteor - 帐户

该软件包允许完整的用户身份验证功能。您可以通过在命令提示符窗口中运行以下代码来添加它。

C:\Users\username\Desktop\meteorApp>meteor add accounts-password

认证示例

此示例将显示基本身份验证,无涯教程将创建注册,登录和主页模板,如果存在 currentUser (如果用户已成功注册或登录),则会显示 home 模板,如果没有 currentUser ,则 register 和 login 模板将可见。

meteorApp.html

<head>
   <title>meteorApp</title>
</head>
 
<body>
   {{#if currentUser}}
      {{> home}}
      {{else}}
      {{> register}}
      {{> login}}
   {{/if}}
</body>

<template name="register">
   <h2>REGISTER:</h2>
   <form>
      <input type="email" name="registerEmail"><br>
      <input type="password" name="registerPassword"><br>
      <input type="submit" value="Register"><br>
   </form>
</template>

<template name="login">
   <h2>LOGIN:</h2>
   <form>
      <input type="email" name="loginEmail"><br>
      <input type="password" name="loginPassword"><br>
      <input type="submit" value="Login"><br>
   </form>
</template>

<template name="home">
   <p>You're logged in.</p>
   <button class="logout">Logout</button>
</template>

首先,无涯教程需要创建一个 register 事件。此函数将读取寄存器输入,创建一个新用户,并将其存储到数据库。

第二个事件是登录。这次,该功能将从登录模板中读取输入,如果电子邮件和密码有效,则登录用户;如果无效,则返回错误。

最后,单击按钮后, logout 事件将用于注销用户。

meteorApp.js

if (Meteor.isClient) {

   Template.register.events({
      'submit form': function(event) {
         event.preventDefault();

         var registerData={
            email: event.target.registerEmail.value,
            password: event.target.registerPassword.value
         }

         Accounts.createUser(registerData, function(error) {
         
            if (Meteor.user()) {
               console.log(Meteor.userId());
            } else {
               console.log("ERROR: " + error.reason);
            }
         });
      }
   });

   Template.login.events({
   
      'submit form': function(event) {
         event.preventDefault();
         var myEmail=event.target.loginEmail.value;
         var myPassword=event.target.loginPassword.value;
			
         Meteor.loginWithPassword(myEmail, myPassword, function(error) {

            if (Meteor.user()) {
               console.log(Meteor.userId());
            } else {
               console.log("ERROR: " + error.reason);
            }
         });
      }
   });

   Template.home.events({

      'click .logout': function(event) {
         event.preventDefault();
			
         Meteor.logout(function(error) {

            if(error) {
               console.log("ERROR: " + error.reason);
            }
         });
      }
   });
}

应用启动后,无涯教程将获得以下页面。

Meteor Accounts Start

在注册表单中输入电子邮件和密码后,无涯教程可以注册并登录新用户,无涯教程将看到控制台记录了用户 id 并呈现了 home 模板。

无涯教程网

Meteor Accounts Register

如果电子邮件和密码正确, login 事件将检查数据库并登录用户。如果不是,控制台将记录一个错误。

链接:https://www.learnfk.comhttps://www.learnfk.com/meteor/meteor-accounts.html

来源:LearnFk无涯教程网

Meteor Accounts Login Error

如果用户单击注销按钮,则该应用将注销用户并显示注册和登录模板。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

重学前端 -〔程劭非(winter)〕

研发效率破局之道 -〔葛俊〕

Electron开发实战 -〔邓耀龙〕

Redis核心技术与实战 -〔蒋德钧〕

说透区块链 -〔自游〕

朱涛 · Kotlin编程第一课 -〔朱涛〕

Serverless进阶实战课 -〔静远〕

运维监控系统实战笔记 -〔秦晓辉〕

AI大模型系统实战 -〔Tyler〕

好记忆不如烂笔头。留下您的足迹吧 :)