【发布时间】:2013-12-10 06:37:11
【问题描述】:
除了节点 API 使用(fs、http、net...)之外,vanilla js 仍然可以在任何引擎上执行。简单的功能可以相对容易地从打包的模块中“提取”(只要符合许可条款),但是对于较大的模块来说这会变得混乱。
是否有在任意环境中使用模块的直接/不那么令人不快的方式?理想情况下,这样的 npm2notnpm 桥将能够与分叉的完整模块进行交互,也不期望它在 100% 的情况下工作:)
为什么?.. 我们必须使用的 CMS 引擎可以使用 Spidermonkey 引擎(在服务器上)执行任意 javascript;不幸的是,这是在平台上构建任何功能的唯一方法。我希望能够尽可能多地利用可用的软件包(愿望清单上的cheerio),而不是在没有上下文的情况下重新发明轮子或复制粘贴代码。
【问题讨论】:
-
这已经是一个非常标准的模式,只需在评估每个包之前重新定义导出和模块,并在评估后收集对象。应该 100% 使用普通的 commonJS 模块...
-
Spidermonkey 引擎和 NodeJS 之间有多少重叠?如果它是一个通用的模块并且不使用 NodeJS 代码,那么它有可能在其他地方可用,比如作为凉亭模块。但是,考虑到您已经知道的限制,尚不清楚您想使用哪种代码?
标签: javascript node.js npm spidermonkey