【问题标题】:Third party libraries of Deno having package.json?Deno 的第三方库有 package.json?
【发布时间】:2021-10-07 23:32:21
【问题描述】:

如果我错了,请纠正我,但 Deno 不应该理解 package.jsonnode_modules 的概念,如果是这样,为什么还有几个第三方库,如 lodashdayjs 仍然有package.json 在他们的仓库中?

【问题讨论】:

  • 我认为你的问题有点不完整。 lodashdayjsdeno 有什么关系?
  • 我认为这是因为 deno 是在前几天发明的。这些库是在此之前构建的。我认为这就是原因。
  • @AgilAtakishiyev:如果您同时点击上面的链接,您将被路由到 deno.land xxx,我认为它是上述两个软件包的 deno 变体?
  • 哦,现在我明白了,这是因为他们的包有一些第三方依赖项,deno 只是发布那些包构建版本,并且构建这些包他们应该有自己的依赖项。跨度>

标签: javascript deno


【解决方案1】:

我可以在这里提供一些历史背景; deno.land/x 注册表的第一个版本通过直接保存在 GitHub 存储库中的存储库列表来工作,任何人都可以提交 PR 以将任何其他公共存储库添加到该列表并复制到 deno.land/x。随着网站规模的扩大以及越来越多的人想要创建模块,该模型被切换为使用必须由存储库所有者设置的 GitHub Webhook。

lodashdayjs 我们在 deno.land/x 早期由社区成员提交,因此 repo 的文件被 1:1 复制到 deno.land/x,这就是为什么你会看到 package.json 文件在那里 -- 它实际上与 lodash 相同的存储库内容。

虽然文件可以通过浏览器或 curl 通过 deno.land/x 获得,但 Deno 永远不会真正访问它;它只会查看您的入口点并从那里遍历依赖关系图,只查看 JS/TS 文件。事实上,如果 deno.land/x 上可用的 lodashdayjs 版本在 Deno 中被完全破坏(至少没有导入映射),我不会感到惊讶。

【讨论】:

  • 有没有关于如何使用导入映射来使用deno.land/x 库的示例?
猜你喜欢
  • 2018-06-05
  • 1970-01-01
  • 2012-08-20
  • 1970-01-01
  • 2019-08-16
  • 1970-01-01
  • 2017-05-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多