Facebook的流程中module.system = haste和module.system = node的区别是什么

时间:2015-05-06 13:44:18

标签: flowtype

我正在开发一个使用Facebook流程的项目。在flow的高级配置中,[options]标题有两种选择(module.system = haste和module.system = node)。

现在我想知道" haste"的区别是什么?和"节点"。

1 个答案:

答案 0 :(得分:4)

它们是解决模块的两种不同方式:haste是react-native用于打包的模块系统(类似于浏览器的browserify或webpack):

https://github.com/facebook/node-haste

node模块系统是节点内部使用的方法。

至于他们实际上的差异:遗憾的是haste还没有大量的文档。 AFAICT的主要区别在于haste可以将包引用(例如require('underscore'))解析为单个模块,而node实际上将为每个子包使用不同的模块。基本上:使用node,您可以在单个程序中使用多个版本的say underscore,而使用haste时,只有一个underscore版本放入最终包中

如果项目中有多个版本的模块,这会导致细微差别,但显然hastebecoming more compatible with existing node behavior