首页 > 解决方案 > 从 Buffer 需要或导入 javascript 模块

问题描述

我有一个 .zip 文件,其中包含一些 javascript 文件。我想要求这些文件并将它们作为普通模块执行,但它们不是文件系统上的实际文件。我可以获得一个表示这些文件中数据的缓冲区,并且我希望能够只“要求”它们而不将它们写出到文件系统只是为了再次读取它们。我想我可以用 eval 做一些鬼鬼祟祟的事情,但我认为可能还有更多的东西。

我现在拥有的解决方案将文件写出并正常需要它们,但是我真的想通过从内存中“读取”来避免幂等性和文件系统管理的复杂性。此外,该解决方案必须可跨消费者操作系统移植。

我可以控制目标 javascript 文件导出其内容的方式,但我想尽可能地坚持使用惯用的 javascript。如果将用户导出代码的方式限制为仅一种语法类型(例如“module.exports = 'foo'”或“export default function foo () {}”)会使这更简单。

标签: node.jsfilemodule

解决方案


推荐阅读