热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

vuevueroutervuexelementuiaxios学习笔记(六)在项目中使用MongoDB完成注册

完成注册功能的思路我的个人构思想法1、首先建里一个简单nodeserver.2、然后定好接口,两边都把接口写好3、最后把项目打包,丢过去server里面测试一下缺点:这样调试非常非

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

完成注册功能的思路

我的个人构思想法
1、首先建里一个简单node server.
2、然后定好接口,两边都把接口写好
3、最后把项目打包,丢过去server里面测试一下

缺点:这样调试非常非常不方便,不知道有没有简单一点的办法,希望有大佬能指点一下

第一步:创建一个简单的server

cnpm init

然后安装各种包

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

然后写一个app.js

// 引入各种包
const express = require('express');
const formidable = require('formidable');
// 这个DB.js是我看一个大佬写的操作mongodb的封装好的库
const DB = require('./DB');
// 这是数据库的地址和集
let dburl = 'mongodb://localhost:27017/learn'
let collection = 'users'
const mOndb= new DB(dburl, collection)
// 这个解析穿过来的数据
const form = new formidable.IncomingForm()
const app = express();
app.use(express.static('./dist'))
// 注册接口 /regin
app.post('/regin', (req, res) => {
form.parse(req, (err, fields, files) => {
let obj = {
username: fields.username,
password: fields.password,
tel: fields.tel,
email:fields.email,
name: fields.name,
time: new Date()
}
// 把数据插入到数据库中,表示注册成功,并把传过来的数据返回方便登录
mondb.insert(obj).then(result => {
res.send(obj)
})
})
})
// 登录接口
app.post('/login', (req, res) => {
form.parse(req, (err, fields, files) => {
let user = {
username: fields.username,
password: fields.password
}
})
mondb.query(user).then(result => {
res.send(result)
})
})
app.listen(8088);
console.log('ok')

总的来看是这样的

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

第二步:编写本地vue项目的登录注册接口

api/api.js

import axios from 'axios'
let base = ''
// 注册接口
export const ReginUser = params => {
return axios.post(`${base}/regin`, params)
}
// 登录接口
export const LoginUser = params => {
return axios.post(`${base}/login`, params)
}

编写regin.vue的逻辑部分




第三步:编写一下my.vue,来验证一下

my.vue

代码:



第四步:打包测试

打包

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

把dist文件夹拖到node里面

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

运行app.js

node app.js

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

效果
这是用node运行在8088端口的了

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

输入规则已经验证通过

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

最重要的考验来了,点一下注册…..

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

成功了,跳转正常,所有注册的数据也都回来了,也没有任何warning,error
数据库中也添加了这一条数据

《vue vue-router vuex element-ui axios学习笔记(六)在项目中使用MongoDB完成注册》

目标:

因为登录页面还没有改,暂时测试不了登录功能,接下来就改完善一下登录状态,不能登录了登录注册的按钮还在,应该要换成人物头像和名字了


推荐阅读
  • 本文介绍了如何使用 Node.js 和 Express(4.x 及以上版本)构建高效的文件上传功能。通过引入 `multer` 中间件,可以轻松实现文件上传。首先,需要通过 `npm install multer` 安装该中间件。接着,在 Express 应用中配置 `multer`,以处理多部分表单数据。本文详细讲解了 `multer` 的基本用法和高级配置,帮助开发者快速搭建稳定可靠的文件上传服务。 ... [详细]
  • Vue应用预渲染技术详解与实践 ... [详细]
  • 本文详细介绍了在 Vue.js 前端框架中集成 vue-i18n 插件以实现多语言支持的方法。通过具体的配置步骤和示例代码,帮助开发者快速掌握如何在项目中实现国际化功能,提升用户体验。同时,文章还探讨了常见的多语言切换问题及解决方案,为开发人员提供了实用的参考。 ... [详细]
  • 单元测试:使用mocha和should.js搭建nodejs的单元测试
    2019独角兽企业重金招聘Python工程师标准BDD测试利器:mochashould.js众所周知对于任何一个项目来说,做好单元测试都是必不可少 ... [详细]
  • 本文探讨了如何在C#应用程序中通过选择ComboBox项从MySQL数据库中检索数据值。具体介绍了在事件处理方法 `comboBox2_SelectedIndexChanged` 中可能出现的常见错误,并提供了详细的解决方案和优化建议,以确保数据能够正确且高效地从数据库中读取并显示在界面上。此外,还讨论了连接字符串的配置、SQL查询语句的编写以及异常处理的最佳实践,帮助开发者避免常见的陷阱并提高代码的健壮性。 ... [详细]
  • AngularJS 进阶指南:第三部分深入解析
    在本文中,我们将深入探讨 AngularJS 的指令模型,特别是 `ng-model` 指令。`ng-model` 指令用于将 HTML 元素与应用程序数据进行双向绑定,支持多种数据类型验证,如数字、电子邮件地址和必填项检查。此外,我们还将介绍如何利用该指令优化表单验证和数据处理流程,提升开发效率和用户体验。 ... [详细]
  • 在使用SSH框架进行项目开发时,经常会遇到一些常见的问题。例如,在Spring配置文件中配置AOP事务声明后,进行单元测试时可能会出现“No Hibernate Session bound to thread”的错误。本文将详细探讨这一问题的原因,并提供有效的解决方案,帮助开发者顺利解决此类问题。 ... [详细]
  • 在GitHub上克隆vue-element-admin项目时遇到依赖安装错误
    在 GitHub 上克隆 vue-element-admin 项目后,使用 `npm install` 安装依赖时遇到了未知的 Git 错误。具体错误信息为 `npm ERR! code 128`,提示命令执行失败。这可能是由于网络问题、Git 配置不正确或某些依赖包的仓库地址无效导致的。建议检查网络连接、更新 Git 版本并确保所有依赖项的 URL 正确无误。 ... [详细]
  • 英语面试技巧:提升个人技能与表现
    在英语面试中,个人技能是指除专业知识外,能够促进职业发展的各种能力。虽然你可能具备多种技能,但建议重点突出与目标岗位最相关的几项,以增强面试官对你专业能力和适应性的认可。 ... [详细]
  • 如何利用正则表达式(regexp)实现高效的模式匹配?本文探讨了正则表达式在编程中的应用,并分析了一个示例程序中存在的问题。通过具体的代码示例,指出该程序在定义和使用正则表达式时的不当之处,旨在帮助读者更好地理解和应用正则表达式技术。 ... [详细]
  • TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得
    TypeScript 实战分享:Google 工程师深度解析 TypeScript 开发经验与心得 ... [详细]
  • 深入解析 Vue 中的 Axios 请求库
    本文深入探讨了 Vue 中的 Axios 请求库,详细解析了其核心功能与使用方法。Axios 是一个基于 Promise 的 HTTP 客户端,支持浏览器和 Node.js 环境。文章首先介绍了 Axios 的基本概念,随后通过具体示例展示了如何在 Vue 项目中集成和使用 Axios 进行数据请求。无论你是初学者还是有经验的开发者,本文都能为你解决 Vue.js 相关问题提供有价值的参考。 ... [详细]
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • npm 安装出错,求助高手分析原因并提供解决方案 ... [详细]
  • 深入探索Node.js新框架:Nest.js第六篇
    在本文中,我们将深入探讨Node.js的新框架Nest.js,并通过一个完整的示例来展示其强大功能。我们将使用多个装饰器创建一个基本控制器,该控制器提供了多种方法来访问和操作内部数据,涵盖了常见的CRUD操作。此外,我们还将详细介绍Nest.js的核心概念和最佳实践,帮助读者更好地理解和应用这一现代框架。 ... [详细]
author-avatar
阿拉伯恶劣我_295
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有