从我所看到的,当使用npm在项目中安装BackboneJS等顶级依赖项时,它会带来Backbone(或任何其他模块)所需的其他几个硬或软依赖项。我的印象是,这些硬件和软件依赖项将以递归方式安装到一个单独的node_modules目录中,在此特定情况下是顶级Backbone目录。
因此,例如,骨干网对下划线有很强的依赖性。我希望下划线是主骨干文件中的子目录,但是下划线安装在主目录节点模块文件的侧骨干上。
我仍然非常喜欢包管理和集成多个JS模块,所以我不确定这是否重要,但我觉得它确实如此。我目前正在跟随O'reillys“使用Backbone.js进行完整堆栈Web开发”一书,该示例显示了带有下划线的文档树作为主干的子目录。
如果有人可以请说明这是否确实存在问题,或者是否有解决方法,我将不胜感激。
答案 0 :(得分:1)
根本不是问题。这就是npm的工作原理。所有依赖项(甚至是依赖项的依赖项)都安装在同一级别。但是当你使用require('module');
时,NodeJS会知道在哪里搜索它,这样Backbone就能找到下划线而没有任何问题。
答案 1 :(得分:1)
您可能已安装和NPM版本3.0.0 +
Earlier this year他们引入了Flat依赖结构作为标准以及更多便利功能。虽然与旧项目的兼容性存在一些问题,但我想您可以继续学习本教程。
如果出现问题,您有两种选择: