Node 相关 API

尹俊贤
2023-12-01

Node 的 path.resolve 方法

import { resolve } from 'path'

function pathResolve(dir: string) {
  return resolve(process.cwd(), '.', dir)
}
  1. 安装依赖
yarn add @types/node --dev
  1. resolve 方法

path.resolve([…paths])里的每个参数都类似在当前目录执行一个 cd 操作,从左到右执行,返回的是最后的当前目录。

path.resolve('/foo/bar', './baz');
// 返回: '/foo/bar/baz'

// 相当于
// cd /foo/bar //此时当前路径为 /foo/bar
// cd ./baz //此时路径为 /foo/bar/baz

path.resolve('/foo/bar', '/tmp/file/');
// 返回: '/tmp/file'

path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif');
// 如果当前工作目录是 /home/myself/node,
// 则返回 '/home/myself/node/wwwroot/static_files/gif/image.gif'

http://nodejs.cn/api/path.html#path_path_resolve_paths

  1. __dirname

当前模块的目录名。这与 __filename 的 path.dirname() 相同。

示例:从 /Users/mjr 运行 node example.js

console.log(__dirname)
// /Users/mjr
console.log(path.dirname(__filename))
// /Users/mjr
  1. __firname

当前模块的文件名。这是当前模块文件的异界行负号链接的绝对路径。

示例:从 /Users/mjr 运行 node example.js

console.log(__filename);
// /Users/mjr/example.js
console.log(__dirname);
//  /Users/mjr

Node 的 process

process.cwd() 方法返回 Node.js 进程的当前工作目录。

import { cwd } from 'process'
console.log(`current directory: ${cwd()}`)
 类似资料: