文章目录
学习内容:
一、node.js概述
1.1 windows终端基本命令
补充:
rd /s/q 不带提示的删除子目录
修改:echo on > 文件 创建文件
echo 内容 > 文件 给文件添加内容
echo 内容 >> 文件 给文件追加内容
1.Node.js(简称为Node)不是一门语言,也不是一个JavaScript框架,也没有一个叫node.js的文件
2.Node.js是一个可以让JavaScript在服务器端运行的系统环境,即运行JavaScript不再依赖于浏览器
3.Node.js是一个基于Chrome的JS引擎(V8)所开发的软件程序,可以执行ECMAScript,但不支持DOM和BOM操作
4.Node提供大量API工具库,使JavaScript可以完成更多功能,如IO操作、数据库操作、获取系统资源等。
1.2 node.js开发环境配置
环境变量;
二、定义模块并导出
2.1 文件模块
独立文件模块有三种形式:
- js文件模块,使用js语法方式进行定义,并通过 module.exports或者exports(注意区别,一般选择前者) 进行模块功能导出
- json文件模块,使用json对象定义数据,当通过require导入模块时,会自动导出定义的json数据
- node文件模块,使用node.js编译后的二进制文件,不能自行定义
- 在Node.js环境中使用 module.exports或exports进行模块的导出:
module 与exports都是Node.js中的全局对象
module对象:Node内部提供一个Module构造函数,属性如下︰
Mudul {
id: '.',//模块的标识符,主模块的id属性值为“.”,其他模块的id属性值为该模块文件的绝对路径
exports: ,//模块的导出对象,为require加载时提供返回结果
parent: nu11,//当前模块的父模块
filename: '',//当前模块的文件名称和存储路径
loaded: false,//表示模块是否加载完成
children: [,//当前模块的子模块
paths:[]//加载模块文件的路径顺序
}
2.2 文件夹模块
1.三个条件:
- 要求文件夹下必须存在index.js或package.json文件
- 如果同时存在,则package.json优先级更高
- 如果存在package.json文件,会自动加载package.json文件中main指向的文件
{
"name":"模块名",
"version" :"模块版本",
"description":"模块描述",
"main":"模块的入口文件",
"scripts ": {
"命令名":"模块的执行命令"},
"keywords":["模块的关键字"],
"author":"模块的作者",
"license":"模块的开源协议,如: Isc、"
}
2.加载模块时如果省略后缀名:
先查找 独立文件模块
.js ————> .json ————> .node
再查找 文件夹模块
package.json ————> index.js
三、nodejs构建后端服务器
3.1 main:‘server.js’
const http = require('http')
//导入主路由
const serverHandler = require('./src/controller/app')
//创建服务器
const