Backbone Marionette和Webpack – Uncaught TypeError:无法读取未定义的属性'radio'

我最近在我的webpack / backbone / marionette项目上做了一个npm安装 ,一切都破裂了。 我现在不断得到这个错误,当我的应用程序运行:

Uncaught TypeError:无法读取未定义的属性“收音机”

backbone.marionette.js线3328

this.channel = _.result(this, 'channel') || Backbone.Wreqr.radio.channel(this.channelName); 

骨干 :1.2.3(我也试过了今天的1.3.1的全新版本)

木偶 :2.4.4

Webpack :1.12.14

幸运的是我的旧node_modules的备份,并注意到在木偶库文件夹结构中的这种差异。

在这里输入图像描述

任何想法发生了什么? 我没有碰到我的package.json,我只是重新运行npm install,看起来像npm / node的新版本。

更新我发现这个线程至less有一个人有完全相同的问题,但我仍然没有解决schemehttps://github.com/marionettejs/backbone.marionette/issues/2559

我通过在我的webpackconfiguration文件中添加一个别名来解决这个问题。

 alias: { backbone: path.join(__dirname, 'node_modules', 'backbone', 'backbone') } 

我注意到,如果没有别名,webpack会在其输出文件中包含backbone.js的多个副本。

帮助在package.json设置dep到:

  "dependencies": { "backbone.marionette": "^2.4.4", "jquery": "^2.2.1", "underscore": "^1.8.3" } 

(完全去除骨干部分)