【Node.js】path 模块进行路径处理

Node.js 执行 JS 代码时,代码中的路径都是以终端所在文件夹出发查找相对路径,而不是以我们认为的从代码本身出发,会遇到问题,所以在 Node.js 要执行的代码中,访问其他文件,建议使用绝对路径

实例:

  1. 问题原因:就是从代码文件夹出发,使用../text.txt解析路径,找不到目标文件,报错了!

  2. 解决方案:使用模块内置变量 __dirname配合 path.join() 来得到绝对路径使用

    js 复制代码
    const fs = require('fs')
    console.log(__dirname) // D:\备课代码\2_node_3天\Node_代码\Day01_Node.js入门\代码\03
    
    // 1. 加载 path 模块
    const path = require('path')
    // 2. 使用 path.join() 来拼接路径
    const pathStr = path.join(__dirname, '..', 'text.txt')
    console.log(pathStr)
    
    fs.readFile(pathStr, (err, data) => {
      if (err) console.log(err)
      else console.log(data.toString())
    })
  3. 再次执行查看问题就被修复了!以后在 Node.js 要执行的 JS 代码中访问其他文件的路径,都建议使用绝对路径。

相关推荐
01传说1 小时前
vue3 配置安装 pnpm 报错 已解决
java·前端·vue.js·前端框架·npm·node.js
摘星小杨4 小时前
如何卸载本机的node.js
node.js
Q_Q51100828513 小时前
python的保险业务管理与数据分析系统
开发语言·spring boot·python·django·flask·node.js·php
摘星小杨1 天前
安装nvm管理node.js,详细安装使用教程和详细命令
node.js·nvm
灋✘逞_兇1 天前
Node.Js是什么?
服务器·javascript·node.js
归于尽1 天前
回调函数在Node.js中是怎么执行的?
前端·javascript·node.js
GDAL1 天前
多字节字符的字节被拆分到不同 chunk 中,导致解码失败
node.js
Jacob02342 天前
“Node.js 不行了”?性能争议中的误解与选择真相
后端·node.js
全宝2 天前
前端也能这么丝滑!Node + Vue3 实现 SSE 流式文本输出全流程
前端·javascript·node.js
天天进步20152 天前
前端工程化:Webpack从入门到精通
前端·webpack·node.js