4

您好,我是前端开发人员。

首先,我对运行时环境了解不多。
是否可以使用 Node 将我的项目转换为 Deno?

即使我更改了所有代码,
我也不确定我收到的库是否可以在 Deno 环境中运行。
(太多的库......)(React,Apollo,很多很多)

而且由于当前的 webpack 设置非常复杂且难以理解,(而且我对构建系统了解甚少。)
我不确定这是否可以在 Deno 环境中工作。

在我看来,这似乎是不可能的,我只会在做新项目的时候使用 Deno,或者等待有人创建迁移指南。

你怎么看待这件事?

添加

显然,如果我使用的库没有在 Deno 存储库中注册,那将是不可能的。

其次,似乎存在节点兼容性问题。

现在我确定我不能将其转换为 deno。谢谢

4

4 回答 4

5

去噪
该工具将 TypeScript 代码库作为输入,该代码库旨在以节点和/或 Web 为目标,并输出已准备好部署为 Deno 模块的源文件的修改版本。
它还有助于在 NPM 和 deno.land/x 上部署

但是,它仍在积极开发中,并非所有内置节点都受支持,您可能需要在代码库中到处进行一些更改以符合 Denoify 集的要求。

另外,我是作者。

回购

于 2020-05-24T08:11:01.463 回答
4

你用纯 JavaScript 或 TypeScript 编写的任何代码都可以在 Node.js 和 Deno 中运行。

但是,您很可能在当前项目中使用了 Node.js 特定的功能。s,对原生 Node.js API(如、和许多其他requireAPI)的调用在 Deno 运行时中不起作用。httputil

此外,大多数 Node.js 库都使用这些特定于 Node.js 的 API,因此您必须对 Deno 进行完全重写。

于 2020-05-20T02:15:46.910 回答
3

你在你的节点项目中使用了许多 npm 包。Deno 不能与它们一起工作。所以要么你等待 deno 足够成熟,要么你将继续使用节点构建你的项目直到那个时候。所以我认为如果你想充分利用 deno,你应该等待 deno 成熟

于 2020-05-20T01:16:51.143 回答
2

我不确定,但是由于您有一个 Node.js 项目,因此您应该使用 npm 包,因此除非您使用的那些 npm 包有替代的 Deno 包,否则它是可能的,但如果没有,那么就像@IsaToltar 所说的那样等待它成为足够成熟。

但是如果你能告诉我们你使用了哪些第三方 npm 包,那么我们也许可以找到一个替代的 Deno 包。

我希望它有所帮助。

于 2020-05-20T01:36:28.743 回答