当前位置: 首页 > 知识库问答 >
问题:

node.js在Deno中的__dirname和__filename等效

吕修伟
2023-03-14

如何获取当前模块的目录&文件名?。在Node.js中,我将使用:__dirname&__filename

共有1个答案

谷梁宝
2023-03-14

在Deno中,没有像__dirname__filename这样的变量,但是可以通过import.meta.url获得相同的值

您可以使用URL构造函数:

const __filename = new URL('', import.meta.url).pathname;
// Will contain trailing slash
const __dirname = new URL('.', import.meta.url).pathname;

注意:在windows上,它将包含/,下面所示的方法将在windows上工作

import * as path from "https://deno.land/std@0.57.0/path/mod.ts";

const __filename = path.fromFileUrl(import.meta.url);
// Without trailing slash
const __dirname = path.dirname(path.fromFileUrl(import.meta.url));
import { __ } from 'https://deno.land/x/dirname/mod.ts';
const { __filename, __dirname } = __(import.meta);
 类似资料:
  • 问题内容: 在Node.js中编程并引用与当前目录相关的文件时,是否有任何理由使用变量而不是常规变量?到目前为止,我一直在代码中使用./,并且发现了./的存在,并且本质上是想知道将./转换为该代码是否明智,如果是这样,那为什么会是一个明智的主意。 问题答案: 在Node.js中,始终是当前正在执行的脚本所在的目录(请参阅参考资料)。所以,如果你键入到,该值会。 相比之下,使用诸如和的库时,会在终端

  • Deno 是 V8 上的安全 TypeScript 运行时。 支持 TypeScript 2.8 开箱即用,使用 V8 6.8.275.3 引擎 无 package.json、npm,不追求兼容 Node 通过 URL 方式引入依赖而非通过本地模块,并在第一次运行的时候进行加载和缓存,并仅在代码使用--reload运行,依赖才会更新,引入方式如: import { test } from "htt

  • 问题内容: 我认为问题很直接。 我正在寻找与nodejs V8引擎中的window.performance.now()类似的东西。 现在我正在使用:- 但是,我读到window.performance.now()比使用日期要准确得多,因为这里定义了什么。 问题答案: 我只想提一下,作者在浏览器中选择使用计时API的三个原因似乎并不直接适用于节点情况,第四个是Javscript时间的不准确性,引用了

  • Deno SaaSKit 是一个开源的高性能 SaaS 模板,用于快速轻松地构建 SaaS。此模板附带每个 SaaS 都需要的基本功能: 用户帐户 用户创建流程 登录页面 定价模块 登录和会话管理 通过 Stripe 进行的订阅计费集成 SEO 友好 Gated API 端点 对移动端友好 Deno SaaSKit 基于 Fresh 和 Deno 构建,因此具有以下特性: 原生支持 TypeScr

  • Deno 是一个 JavaScript/TypeScript 的运行时,默认使用安全环境执行代码,有着卓越的开发体验。

  • 问题内容: 我正在遵循此处的指导(侦听事件)以响应+或服务器关闭来正常关闭Windows-8托管的node.js应用程序。 但是Windows没有。我也尝试过,但这似乎迟迟没有任何成效。 在Windows上,此代码为我提供: 错误:无此类模块 在Windows上,此代码可以运行,但现在 做任何优雅的动作为时已晚 : Windows上是否有等效事件? 问题答案: 您必须使用readline模块并监听