AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第1张图片

《诗·小雅·小旻》:“战战兢兢,如临深渊,如履薄冰。”

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第2张图片

01.Nodejs安装与使用

什么是 Node.js?

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第3张图片

什么是前端工程化?

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第4张图片

Node.js 为何能执行 JS?

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第5张图片

查看当前使用的Node.js版本:node -v

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第6张图片

执行JS:node 01.js

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第7张图片

Node.js 安装

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第8张图片

总结

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第9张图片

02.fs 模块 - 读写文件

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第10张图片

加载fs模块对象到自己编写的js文件中,进行写与读

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第11张图片

数据流对象默认为十六进制,使用toString方法转化

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第12张图片

03.path 模块 - 路径处理

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第13张图片

我们在nodejs环境中执行js代码,它的所有相对路径是以终端文件夹作为起点

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第14张图片

疑问:在windows中要用\反斜杠吗?—— 传到join方法中会做转换

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第15张图片

成功找到test.txt文件

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第16张图片

使用path模块的join方法,结合_dirname生成的绝对路径,

可在任意位置开启的终端找到所需文件。

04.案例 - 压缩前端 html

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第17张图片

实践代码:

/**
 * 目标1:压缩 html 代码
 * 需求:把回车符 \r,换行符 \n 去掉,写入到新 html 文件中
 *  1.1 读取源 html 文件内容
 *  1.2 正则替换字符串
 *  1.3 写入到新的 html 文件中
 */
// 1.1 读取源 html 文件内容
const fs = require('fs')
const path = require('path')
fs.readFile(path.join(__dirname, 'public/index.html'), (err, data) => {
  if (err) console.log(err)
  else {
    const htmlStr = data.toString()
    // 1.2 正则替换字符串
    const resultStr = htmlStr.replace(/[\r\n]/g, '')
    console.log(resultStr)
    // 1.3 写入到新的 html 文件中
    fs.writeFile(path.join(__dirname, 'dist/index.html'), resultStr, err => {
      if (err) console.log(err)
      else console.log('写入成功')
    })
  }
})

写入的代码只有一行

05.URL 中的端口号

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第18张图片

注意:http 协议,默认访问 80 端口(所以之前访问接口的时候没有加端口号,也能获取到数据)

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第19张图片

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第20张图片

06.http 模块-创建 Web 服务

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第21张图片

执行时server.js,与之前不同,没有停止执行,它会在终端里启动一个进程,进程持续存在,监听有无请求,有请求就会触发处理函数,返回一个响应内容。

之前执行完后,会立刻出现路径,再让你输入下一条命令

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第22张图片

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第23张图片

07.案例-浏览时钟

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第24张图片

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第25张图片

实践代码:

/**
 * 目标:基于 http 模块创建 Web 服务程序
 *  1.1 加载 http 模块,创建 Web 服务对象
 *  1.2 监听 request 请求事件,设置响应头和响应体
 *  1.3 配置端口号并启动 Web 服务
 *  1.4 浏览器请求(http://localhost:3000)测试
 */
// 1.1 加载 http 模块,创建 Web 服务对象
const http = require('http')
const server = http.createServer()
// 1.2 监听 request 请求事件,设置响应头和响应体
server.on('request', (req, res) => {
  // 设置响应头-内容类型-普通文本以及中文编码格式
  res.setHeader('Content-Type', 'text/plain;charset=utf-8')
  // 设置响应体内容,结束本次请求与响应
  res.end('欢迎使用 Node.js 和 http 模块创建的 Web 服务')
})
// 1.3 配置端口号并启动 Web 服务
server.listen(3000, () => {
  console.log('Web 服务启动成功了')
})

AJAX入门到实战,学习前端框架前必会的(ajax+node.js+webpack+git)(六)_第26张图片

你可能感兴趣的:(框架前置,node.js,学习,前端框架)