@343545

第一部分:先从node.js安装开始

安装包名称:node-v16.14.2-x64

然后直接点击直接进入安装程序即可

安装包可以自行去网上找。

第二部分:验证安装是否成功

打开cmd命令窗口

输入:node -v

可以查看node的版本号,如果出现版本号即安装成功,但是还需要检查一个npm的版本号

npm是node.js中使用插件的玩意,也是相同输入:npm -v

查看版本号,他在安装node.js时npm也会一块安装,不需要自己动手。

Microsoft Windows [版本 10.0.19043.928]
(c) Microsoft Corporation。保留所有权利。C:\Users\Administrator>node -v
v16.14.2
C:\Users\Administrator>npm -v
8.5.0

第三部分:编写入门初始程序

打开vs code软件,配置vs code插件

插件分别有chinese中文插件,live server内部浏览器插件插件

然后再vs code的集成终端中运行node。

命令是 node 你需要运行的js文件。

版权所有 (C) Microsoft Corporation。保留所有权利。尝试新的跨平台 PowerShell https://aka.ms/pscore6
PS F:\T2009小刘(可以参观,请别破坏!!!)\nodeJS课程\node\mycode\js> node index.js

第四部分:再一个js文件中引用另一个js文件

首先先创建两个js文件分别是index和demo

然后再index中引用demo里面的方法等

再demo.js中编写的是

function jiafa(a, b) {return a + b;
}module.exports = {jiafa,
}

module.exports = {}这是暴露接口,必须暴露接口其他文件才能访问,我在里面写了一个简单的方法。然后再index文件中编写

//引入其他文件中的js并且在vacode中的集成终端中运行
const jiafa = require("./demo.js");
console.log(jiafa.jiafa(5, 6));

定义一个常量const,然后指向引入的require(“”)文件,其中require()括号里面填写的是你需要引入的文件地址。

然后传递参数再vs code中使用index.js。这样再集成终端中就会输出11出来

版权所有 (C) Microsoft Corporation。保留所有权利。尝试新的跨平台 PowerShell https://aka.ms/pscore6
PS F:\T2009小刘(可以参观,请别破坏!!!)\nodeJS课程\node\mycode\js> node index.js
11

第五部分:运用node.js自带的api同步异步写入读取文件。

//node.js中的读写入文件方法
const fs = require("fs");
//第一个参数为在那个文件,第二个参数为写入什么数据,第三个参数为写入时是什么格式的
//同步写入
// fs.writeFileSync("demo.html","欢迎同步写入文件","utf-8");
//前三个参数与同步无异,第四个参数为回调函数
//异步写入
fs.writeFile("demo.html","欢迎异步写入文件","utf-8", (err)=>{//err一般为空,除非写入错误console.log(err);
});
//同步读取文件
// let txt = fs.readFileSync("demo.html","utf-8");
// console.log(txt);
//异步读取文件
let txt1 = fs.readFile("demo.html","utf-8",(err,data)=>{console.log(err,data);
})

然后最终我们的两个js文件的代码是这样子的

demo.js文件

function jiafa(a, b) {return a + b;
}module.exports = {jiafa,
}

index.js文件

//引入其他文件中的js并且在vacode中的集成终端中运行
const jiafa = require("./demo.js");
console.log(jiafa.jiafa(5, 6));
//node.js中的读写入文件方法
const fs = require("fs");
//第一个参数为在那个文件,第二个参数为写入什么数据,第三个参数为写入时是什么格式的
//同步写入
fs.writeFileSync(".././demo.html","欢迎同步写入文件","utf-8");
//前三个参数与同步无异,第四个参数为回调函数
//异步写入
// fs.writeFile(".././demo.html","欢迎异步写入文件","utf-8", (err)=>{//     //err一般为空,除非写入错误
//     console.log(err);
// });
//同步读取文件
// let txt = fs.readFileSync("demo.html","utf-8");
// console.log(txt);
//异步读取文件
let txt1 = fs.readFile(".././demo.html","utf-8",(err,data)=>{console.log(err,data);
})

第六部分:运用live server插件

前面我们已经安装了插件,本身在vs code中是不自带引用本地浏览器运行html文件的,然后就需要我们的插件

首先我们先在vs code中创建一个html文件,这里有一个快捷键可以用就是现在创建的html文件中输入Shift+!号,然后会有弹框在点击Enter回车键就会自带生成html代码了

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><h1>测试运行!</h1>
</body>
</html>

测试运行是我自己加上去的,然后鼠标右键点击Open with Live Server就会自动在浏览器中运行html文件了

第七部分:使用node.js中的http模块api

首先先引入http模块

//服務器
const http = require("http");

然后创建服务器,其中createServer中的两个参数是请求和响应,以及里面使用方法

res.end是响应网页内容,再加上之前fs模块中的读取就直接响应了一个网页一个网页。

//服務器
const http = require("http");
//创建服務器
const app = http.createServer((req,res)=>{let html = fs.readFileSync(".././index.html","utf-8");res.end(html);
})

还有一个监听服务器的方法

//監聽服務器啟動
app.listen(80, ()=>{console.log("服務器已啟動...");
})

app.listen(80, ()=>{})是监听服务器启动到接受参数之内的方法,其中80代表端口号,80是浏览器中默认的端口号,在浏览器中直接输入localhost就可以直接访问我们的浏览器了,当然也可以更改端口号。

然后通过集成终端启动后就会输出

Windows PowerShell
版权所有 (C) Microsoft Corporation。保留所有权利。尝试新的跨平台 PowerShell https://aka.ms/pscore6PS F:\T2009小刘(可以参观,请别破坏!!!)\nodeJS课程\node\mycode\js> node index.js
服務器已啟動...

然后再集成终端内是不能输入任何命令的,可以通过鼠标光标再集成终端内Ctrl+C关闭服务器就可以继续输入命令了。

第八部分:安装npm框架=》node+express+mysql开发

第一步:npm改淘宝镜像

npm install -g cnpm -registry=https://registry.npm.taobao.org

其中install可以简写为i,然后-g表示全局安装

改淘宝镜像的原因是因为下载express框架是太慢了,从国外链接下载的,所以改成淘宝镜像

检查是否成功安装镜像:$ cnpm -v

C:\Users\Administrator>npm install  -g cnpm -registry=https://registry.npm.taobao.org​
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142added 376 packages in 3m

第二步:安装express

npm i express -g

C:\Users\Administrator>npm i express -gchanged 57 packages, and audited 58 packages in 3s7 packages are looking for fundingrun `npm fund` for detailsfound 0 vulnerabilities

npm i -g express-generator

C:\Users\Administrator>npm i -g express-generator
npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)added 10 packages, and audited 11 packages in 3s3 vulnerabilities (1 moderate, 1 high, 1 critical)To address all issues (including breaking changes), run:npm audit fix --forceRun `npm audit` for details.

第三步:检查是否安装成功

express --version

C:\Users\Administrator>express --version
4.16.1

第四步:创建项目

选择一个文件夹内打开cmd或者直接通过转盘和cd命令道文件夹内

通过这些命令创建项目:

express (myseifAPI)指项目名

Microsoft Windows [版本 10.0.19043.928]
(c) Microsoft Corporation。保留所有权利。F:\T2009小刘(可以参观,请别破坏!!!)\nodeJS课程\node\MyCodeTwo>express myseifAPIwarning: the default view engine will not be jade in future releaseswarning: use `--view=jade' or `--help' for additional optionscreate : myseifAPI\create : myseifAPI\public\create : myseifAPI\public\javascripts\create : myseifAPI\public\images\create : myseifAPI\public\stylesheets\create : myseifAPI\public\stylesheets\style.csscreate : myseifAPI\routes\create : myseifAPI\routes\index.jscreate : myseifAPI\routes\users.jscreate : myseifAPI\views\create : myseifAPI\views\error.jadecreate : myseifAPI\views\index.jadecreate : myseifAPI\views\layout.jadecreate : myseifAPI\app.jscreate : myseifAPI\package.jsoncreate : myseifAPI\bin\create : myseifAPI\bin\wwwchange directory:> cd myseifAPIinstall dependencies:> npm installrun the app:> SET DEBUG=myseifapi:* & npm start

出现以上情况代表创建成功

然后进入创建的文件夹内安装项目依赖

npm install

开始项目命令:npm start

F:\T2009小刘(可以参观,请别破坏!!!)\nodeJS课程\node\MyCodeTwo>cd myseifAPIF:\T2009小刘(可以参观,请别破坏!!!)\nodeJS课程\node\MyCodeTwo\myseifAPI>npm install
npm WARN deprecated transformers@2.1.0: Deprecated, use jstransformer
npm WARN deprecated constantinople@3.0.2: Please update to at least constantinople 3.1.1
npm WARN deprecated jade@1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jadeadded 99 packages, and audited 100 packages in 11s5 vulnerabilities (1 low, 4 critical)To address all issues (including breaking changes), run:npm audit fix --forceRun `npm audit` for details.

然后项目就创建成功了,可以把项目拖入vs code去进行操作了。

拖入之后可以把bin文件夹下的www文件中的三行命令复制到app.js中

var http = require('http');
var server = http.createServer(app);
server.listen(port);

复制到app.js中

var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var http = require('http');var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');var app = express();
var server = http.createServer(app);// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));app.use('/', indexRouter);
app.use('/users', usersRouter);// catch 404 and forward to error handler
app.use(function(req, res, next) {next(createError(404));
});// error handler
app.use(function(err, req, res, next) {// set locals, only providing error in developmentres.locals.message = err.message;res.locals.error = req.app.get('env') === 'development' ? err : {};// render the error pageres.status(err.status || 500);res.render('error');
});server.listen(80, ()=>{console.log("服务器启动...");
});

改成以上样子就可以了,bin文件夹就没有用可以删除掉了,然后可以直接启动node app.js就可以启动服务器了

Windows PowerShell
版权所有 (C) Microsoft Corporation。保留所有权利。尝试新的跨平台 PowerShell https://aka.ms/pscore6PS F:\T2009小刘(可以参观,请别破坏!!!)\nodeJS课程\node\MyCodeTwo\myseifAPI> node app.js
服务器启动...
GET / 200 5694.212 ms - 170
GET / 200 13.129 ms - 170
GET /stylesheets/style.css 200 3.586 ms - 111
GET /favicon.ico 404 12.939 ms - 1722

启动成功直接浏览器中输入localhost就可以直接访问了,

今天的课程也就到此结束了。

node.js学习笔记Day1相关推荐

  1. node.js学习笔记

    # node.js学习笔记标签(空格分隔): node.js---## 一 内置模块学习 ### 1. http 模块 ``` //1 导入http模块 const http =require('ht ...

  2. node.js学习笔记14—微型社交网站

    node.js学习笔记14-微型社交网站 1.功能分析 微博是以用户为中心,因此需要有注册和登录功能. 微博最核心的功能是信息的发表,这个功能包括许多方面,包括:数据库访问,前端显示等. 一个完整的微 ...

  3. Node.js学习笔记8

    Node.js学习笔记8 HTTP服务器与客户端 Node.js的http模块,封装了一个高效的HTTP服务器和一个简易的HTTP客户端 http.server是一个基于事件的HTTP服务器,核心由N ...

  4. node.js学习笔记5——核心模块1

    node.js学习笔记5--核心模块1 Node.js核心模块主要内容包括:(1)全局对象 (2)常用工具 (3)事件机制 (4)文件系统访问 (5)HTTP服务器与客户端 一: 全局对象 Node. ...

  5. node.js 学习笔记(二)模板引擎和C/S渲染

    node.js 学习笔记(二)模板引擎和C/S渲染 文章目录 node.js 学习笔记(二)模板引擎和C/S渲染 一.初步实现Apache功能 1.1 使用模板引擎 1.2 在 node 中使用模板引 ...

  6. 千锋Node.js学习笔记

    千锋Node.js学习笔记 文章目录 千锋Node.js学习笔记 写在前面 1. 认识Node.js 2. NVM 3. NPM 4. NRM 5. NPX 6. 模块/包与CommonJS 7. 常 ...

  7. 唤醒手腕 - 前端服务器端开发 Node.Js 学习笔记(学习中,更新中)

    唤醒手腕 - Node.Js 学习笔记 唤醒手腕个人的学习记录,时间在2021年12月13日 ~ 2021年12月14日,学习方式看官方文档和B站视频,如有错误或者代码问题的地方,欢迎C站大佬能够帮忙 ...

  8. node.js学习笔记Day2

    目录 第一部分:用npm安装mysql模块 第二部分:在项目内创建 第三部分:引用opreateDB方法 第四部分:解决异步方法的问题 第五部分:关于热启动 第六部分:关于接收参数和带参查询数据 今天 ...

  9. node.js学习笔记 - 文件上传(并用七牛云托管)

    文章目录 环境搭建 准备工作 安装相关依赖 代码实现 执行 环境搭建 准备工作 提示:本文采用ts来构建环境,要是以js构建则取掉类型定义即可. 初始化项目 创建目录fileUpload-demo- ...

最新文章

  1. 怎么计算一组数据的波动_数据分析(一):数据描述统计
  2. CENTOS MINI版安装tomcat9.0
  3. html左右滑动选择控件,jQuery让控件左右移动的三种实现方法
  4. BRAND-NEW OF DOUBLES工作组合的新作品
  5. HEVC/H265 namespace 介绍
  6. VS2019 配色_这个双11,凯里-欧文陪你过!欧文6正式发布,城市版配色真的香
  7. 地理信息系统软件测试培训,地理信息系统软件测试方法技术方案
  8. flask manage port_后端Python3+Flask结合Socket.io配合前端Vue2.0实现简单全双工在线客服系统...
  9. 关于ibatis.net框架(NPetshop学习)
  10. 华为搭载鸿蒙2.0系统的手机,华为官方:鸿蒙系统2.0上线,手机能否搭载鸿蒙操作系统?...
  11. 工控安全| 西门子S7-300攻击分析
  12. 《巴菲特法则》书中的精髓:用好巴菲特企业前景投资法则,股票投资稳赚不赔。
  13. 随笔—我的大学,在人间1
  14. 母牛的故事【HDOJ2018】
  15. 如何使用Reviewboard进行代码Review?
  16. 微信公众号访问 ssm框架根目录下MP_verify_xxxxxx.txt的解决方法
  17. excel任意单元格中自动插入页码和总页数
  18. 计算机硬盘一只闪烁,硬盘灯一直亮,小编教你电脑硬盘指示灯一直亮怎么办
  19. 解决slideup或slidedown图片抖动
  20. Agarose bound-GSL II,BSL II;琼脂糖结合的灰树单叶凝集素II

热门文章

  1. GCC多版本控制安装
  2. 小肚皮最新版本_小肚皮最新版apk下载-小肚皮最新版app安卓版下载 5.20.2-老铁下载网...
  3. Macos 安装Clang和LLVM过程记录
  4. 有趣且重要的Git知识合集(7)git stash报错 Too many revisions specified: ‘stash@‘ ‘MAA=‘ ‘xml‘ ‘text‘
  5. 【32】css跟js实现打气球的游戏
  6. jBPM4教程 jBPM4视频教程推荐
  7. 16-SpringBoot之Redis(三)——Redis事务机制
  8. C/C++/Linux「学习必备」珍藏多年的学习网站分享 | 工欲善其事必先利其器
  9. scrapy教程+selenium +数据的各种永久化存储
  10. 在 Windows 操作系统中,PDFMaker 处理 Office 2016 和 Office 365 的文档时崩溃