VUE 开发——Node.js学习(一)

一、认识Node.js

Node.js是一个跨平台JavaScript运行环境,使开发者可以搭建服务器端的JavaScript应用程序

使用Node.js编写服务器端程序------编写数据接口、前端工程化;

Node.js环境没有BOM和DOM;

Node.js安装:下载node-v16.19.0msi安装程序

使用Node.js:在集成终端中,输入node xxx.js,回车即可执行

二、fs模块------读写文件

javascript 复制代码
//模块:类似插件,封装了方法和属性;
//fs模块:封装了与本机文件系统进行交互的方法/属性
/**
 * 基于fs模块读写文件内容
 * 1.加载fs模块对象
 * 2.写入文件内容
 * 3.读取文件内容
 */

// 1.加载fs模块对象
const fs = require('fs')
// 2.写入文件内容
fs.writeFile('./text.txt','hello,Node.js',(err) => {
    if (err) console.log(err)
    else console.log('写入成功')
})
// 3.读取文件内容
fs.readFile('./text.txt',(err,data) => {
    if (err) console.log(err)
    else console.log(data.toString())
})

三、path模块------路径处理

在Node.js代码中,使用绝对路径

__dirname内置变量(获取当前模块目录------绝对路径)

path.join()会使用特定于平台的分隔符,作为界定符,将所有给定的路径片段连接在一起

四、URL中的端口号

端口号:标记服务器里不同功能的服务程序

端口号范围:0~65535之间的任意整数

注意:http协议,默认访问80端口

常见的服务程序:

Web服务程序:用于提供网上信息浏览功能

0-1023和一些特定端口号被占用,我们自己编写服务程序请避开使用

javascript 复制代码
/**
 * 创建web服务并响应内容给浏览器
 * 1.加载http模块,创建web服务对象
 * 2.监听request请求事件,设置响应头和响应体
 * 3.配置端口号并启动web服务
 * 4.浏览器请求http://localhost:3000测试
 */

// 1.加载http模块,创建web服务对象
const http = require('http')
const server = http.createServer()
// 2.监听request请求事件,设置响应头和响应体
server.on('request',(req,res) => {
    //设置响应头------内容类型------普通文本以及中文编码格式
    //内容中有中文字符,进行处理
    res.setHeader('Content-Type','text/plain;charset=utf-8')
    //设置响应体内容,结束本次请求与响应
    res.end('欢迎使用Node.js')
})
// 3.配置端口号并启动web服务
server.listen(3000,() => {
    console.log('Web服务启动成功!')
})

五、模块化

在Node.js中,每个文件都被视为一个单独的模块。

CommonJS标准

导出文件util

javascript 复制代码
const baseURL = 'http://hmajax.itheima.net'
const getArraySum = arr => arr.reduce(
    (sum,item) => sum += item,0
)  

//导出
module.exports = {
    url:baseURL,
    arraySum: getArraySum
}

导入文件

javascript 复制代码
/**
 * 需求:定义util.js模块,封装基地址和求数组总和的函数 
 * 1.导出:module.exports = {}
 * 2.导入:require('模块名路径')
 */

const obj = require('./util.js')
console.log(obj)
const result = obj.arraySum([5,1,2,3])
console.log(result)
ECMAScript标准

1.导出文件util

javascript 复制代码
import { arraySum } from "../commonJS/util"

const baseURL = 'http://hmajax.itheima.net'
const getArraySum = arr => arr.reduce(
    (sum,item) => sum += item,0
)  

//导出
export default {
    url: baseURL,
    arraySum: getArraySum
}

2.导入文件

javascript 复制代码
import { arraySum } from "../commonJS/util"

const baseURL = 'http://hmajax.itheima.net'
const getArraySum = arr => arr.reduce(
    (sum,item) => sum += item,0
)  

//导出
export default {
    url: baseURL,
    arraySum: getArraySum
}

3.让Node.js切换模块标准ECMAScript

运行模块所在文件夹,新建package.json

并设置package.json内容

javascript 复制代码
{
    "type": "module"
}
ECMAScript标准------命名导出和导入

按需加载,使用命名导出或导入

全部加载,使用默认导出或导入

javascript 复制代码
import { arraySum } from "../commonJS/util"

export const baseURL = 'http://hmajax.itheima.net'
export const getArraySum = arr => arr.reduce(
    (sum,item) => sum += item,0
)  
javascript 复制代码
/**
 * 1.导出:export default {}
 * 2.导入:import 变量名 from '模块名或路径'
 */

//导入
import {baseURL,getArraySum} from './util.js'
console.log(baseURL)
console.log(getArraySum)

六、 包

包分为项目包和软件包,项目包主要用于编写项目和业务逻辑,软件包主要封装工具和方法进行使用。

根目录中,必须有package.json文件,记录包的清单信息

|-----------------|---------------|
| 功能 | 命令 |
| 执行js文件 | node xxx |
| 初始化package.json | npm init -y |
| 下载本地软件包 | npm i 软件包名 |
| 下载全局软件包 | npm i 软件包名 -g |
| 删除软件包 | npm uni 软件包名 |

相关推荐
QQ同步助手20 分钟前
如何正确使用人工智能:开启智慧学习与创新之旅
人工智能·学习·百度
流浪的小新28 分钟前
【AI】人工智能、LLM学习资源汇总
人工智能·学习
A懿轩A1 小时前
C/C++ 数据结构与算法【数组】 数组详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·数组
一个处女座的程序猿O(∩_∩)O2 小时前
小型 Vue 项目,该不该用 Pinia 、Vuex呢?
前端·javascript·vue.js
燃先生._.8 小时前
Day-03 Vue(生命周期、生命周期钩子八个函数、工程化开发和脚手架、组件化开发、根组件、局部注册和全局注册的步骤)
前端·javascript·vue.js
南宫生9 小时前
力扣-图论-17【算法学习day.67】
java·学习·算法·leetcode·图论
sanguine__9 小时前
Web APIs学习 (操作DOM BOM)
学习
理想不理想v11 小时前
webpack最基础的配置
前端·webpack·node.js
数据的世界0111 小时前
.NET开发人员学习书籍推荐
学习·.net