webpacked之后的Angular2 loadChildren,生成__webpack_require__不是函数

时间:2017-01-05 08:34:35

标签: javascript angular webpack

我有一个使用loadChildren的简单Angular2应用程序,它在依赖SystemJs的开发期间工作正常,在webpacking之后,并使用webpack加载器解决问题,输出看起来像这样

path: 'events', component: CoreComponents.MainLayoutComponent, loadChildren: 
   function(){ 
      return  __webpack_require__(125)("EventModule")
   }

当我浏览/ events时,我得到了

TypeError: __webpack_require__(...) is not a function

我通过webpack存储库阅读并发现了这一点 https://github.com/webpack/webpack/issues/1890

但是他们说它已经关闭了,如果它关闭了,不知道错误来自哪里,除了loadChildren语法的简单修复之外我不使用任何其他的加载器(类似于这个https://github.com/daviddt/angular2-lazy-load-example)。当我在return语句之前添加一个控制台日志时,它会返回一个“对象”而不是“函数”

console.log(__webpack_require__(125));

返回:

1. Object
    1. EventModule:EventModule()
        1. arguments:(...)
        2. caller:(...)
        3. length:0
        4. name:"EventModule"
        5. prototype:Object
        6. __proto__:()
        7. [[FunctionLocation]]:app.js:46194
        8. [[Scopes]]:Scopes[2]
    2. __proto__:Object

我错过了什么?

1 个答案:

答案 0 :(得分:1)

挖了深,终于找到了答案 该行应该使用方括号!

 return  __webpack_require__(125)["EventModule"]