作为Webpack的新手,我开始了一些示例侧面项目,并使其与Backbone,Marionette和Webpack一起正常工作。
然后我去了迪士尼一个星期。当我回来时,我做了npm update
,现在“Backbone.Marionette”未定义。对于每个项目!我找到了一个解决版本号混乱的各种诡计,但我不明白发生了什么,或者如何解决它。
我把它归结为一个原始的例子:
window.$ = require('jquery');
window._ = require('underscore');
var BM = require('backbone.marionette');
console.log(Backbone); // v1.2.3
console.log(Backbone.Marionette); // undefined?!
console.log(BM); // 2.4.4
var App = Backbone.Marionette.Application.extend({});
require
线在Backbone中拔得很好,但不再像以前那样定义Backbone.Marionette。它正在工作。我可以通过使用“BM”var来使事情变得有效,但我更愿意理解发生了什么。
我是这个webpack业务的新手。
答案 0 :(得分:1)
我得到了它的工作。我完全清除了devDependencies
的{{1}}和dependencies
部分并删除了package.json
目录。然后我继续运行应用程序,安装它碰巧抱怨的任何软件包。最终,我的投诉结束了,愚蠢的事情起作用了。
事实证明,./node_modules
同时具有“骨干”和“backbone.marionette”,所以在某些时候,如果package.json
已经初始化,那么它显然也在初始化Backbone.Marionette
,抹去以前的任何工作。