Node.js项目开发流程---kalrry

406 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

前言

Win配置记录
Mac配置记录

一、配置脚手架环境

1、用express脚手架创建项目

 express  -e  项目名

2、安装express的依赖

npm i

3、 启动express的项目:

npm  start

4、访问项目

http://localhost:3000(可能访问不了)
www文件中可查看端口号:var port = normalizePort(process.env.PORT || '3000');
系统环境变量新增port:添加一个端口号,重新npm start,使用localhost:端口号访问

二、下载配置mogodb数据库

  1. MacBook M1安装Mongodb
  2. Win安装方式
1、安装方式:下载客户端安装
2、查看版本:mongod -version

三、配置Mongoose

1、安装mongoose

  npm   i    mongoose  --save

2、mongodb连接数据库

//1、conndb.js  连接数据库
const mongoose = require('mongoose');
mongoose.connect(
		'mongodb://localhost:27017/db2106',
		{
            useNewUrlParser:true
        } //使用解析器来解析本次连接
);
module.exports = mongoose;

3、usersdb.js 针对集合users的所有操作

let mongoose = require('./conndb'); //引入连接数据库的代码
//模板:创建集合users对应的模板(相当于表结构,在nodejs里创建一个表结构)
let userSchema = new mongoose.Schema({
    'userName':String,
    'userPass':String
});

4、把数据库中集合users和模板进行对应和绑定

let UserModel = mongoose.model('users',userSchema);

5、实现增删改查

module.exports = {
//1)、添加
	addUser:function(user,success,fail) {
		//1)、创建实体(要添加到数据库中的数据)
		let userEntity = new UserModel({
            userName:"敖东",
            userPass:"123"
        });
		userEntity.save((err,data)=>{
			if(err){  
                fail&&fail();
			}else{	
                success&&success(); 
            }
		});
    }
}
module.exports = {
//2)、查询
	queryUser:function(obj,success,fail){
		UserModel.find(obj,(err,data)=>{
			if(err){   
                fail&&fail();  
			}else{   
                success&&success(data); 
            }
		});
	}
}
module.exports = {
//3)、删除
	removeUser:function(obj,success,fail){
		UserModel.remove(obj,(err,data)=>{
			if(err){
				fail&&fail();
			}else{
				success&&success(data);
			}
		});
	},
}
module.exports = {
//4)、修改
	updateUser:function(condationObj,updateObj,success,fail){
		UserModel.update(condationObj,updateObj,(err,data)=>{
			if(err){
				fail&&fail();
			}else{
				success&&success(data);
			}
		});
	}
}

END、node.js八股文

​ 1、搭建服务器(使用express框架辅助)

​ 2、mongodb 注册和登录增删改查新闻(bootstrap)(使用mongoose插件辅助)

​ 3、api server 注册和登录增删改查新闻(bootstrap)

​ 4、bcrypt加密 注册和登录

​ 5、session 登录和其它需要验证身份的模块(如:添加,删除)

​ 6、token 登录,其它需要验证身份的模块(如:添加,删除)

​ 7、上传图片:添加新闻

​ 8、socket :做聊天室