发布时间

path模块的__dirname和__filename

Authors
  • avatar
    Name
    Chad
    Twitter

nodejs ——path 模块的**dirname 和 **filename

  • 我们在使用 nodejs,可能需要对 node_modules 开放一些目录,fs 取的是绝对路径,而我们在不同的环境下,node_modules 可能存在于 不同的 根目录中,这个时候我们就要用到 join()方法 来吧绝对路径进行一个转换, 来获取一个动态的绝对路径
app.use("/public/", express.static(path.join(__dirname, "./public/")))
app.use(
  "/node_modules/",
  express.static(path.join(__dirname, "./node_modules/"))
)
  • 这里我们开放了 public 和 node_modules 这 2 个 目录文件夹

  • **dirname 和 **filename

    • 动态的 获取当前文件或者文件所处目录的绝对路径
    • 用来解决文件操作路劲的相对路径问题
    • 因为在文件操作中,相对路径相对于执行 node 命令所处的目录
    • 所以为了尽量避免这个问题,都建议文件操作的相对路径都转为:动态的绝对路径
    • 方式:path.join(__dirname, '文件名')
  • **dirname 和 **filename 是模块中 的一个内置成员,他们分别是:

  • __dirname 是当前文件夹的绝对路径
  • __filename 是当前文件的绝对路径
  • 一般情况下都是 配合 join 方法使用的,把当前相对路径转换为 动态的绝对路径

Support

赞赏

如果这些内容对你有所帮助,欢迎赞赏支持。

微信赞赏二维码
微信赞赏
支付宝赞赏二维码
支付宝赞赏