node.js中d3和mongo之间的冲突

node.js中d3和mongo之间的冲突,node.js,mongodb,d3.js,Node.js,Mongodb,D3.js,当在需要mongo(连接mongo)的模块之前需要d3.js时,我得到以下错误: TypeError: Cannot read property 'BSON' of undefined at .../node_modules/connect-mongo/node_modules/mongodb/lib/mongodb/index.js:48:44 如果我在mongo模块之后需要d3.js,它可以正常工作 我不是第一个遇到这个问题的人,但我不知道有什么冲突 发生这种情况是因为您使用的BS

当在需要mongo(连接mongo)的模块之前需要d3.js时,我得到以下错误:

TypeError: Cannot read property 'BSON' of undefined
    at .../node_modules/connect-mongo/node_modules/mongodb/lib/mongodb/index.js:48:44
如果我在mongo模块之后需要d3.js,它可以正常工作

我不是第一个遇到这个问题的人,但我不知道有什么冲突
发生这种情况是因为您使用的BSON版本会检查是否存在
全局窗口,以查看它是否在Node.JS中运行。这是一个坏主意,例如,D3.js通过JSDOM创建这样一个全局文件,从而使检查无效

但是,该问题似乎已在a中修复,即在BSON v0.1.5中

在撰写本文时,npmjs.org上的mongodb版本为,但BSON依赖项已在v1.2.0中更新,该版本似乎即将发布(参见GitHub)