2014-07-15 37 views
4

我试图使用webpackdevtool功能,我已经建立了我的配置如下所示:的WebPack源地图是匿名

{ 
    devtool: 'eval-source-map' 
} 

这似乎很好地工作,我可以看到我的源代码正在包装在eval()函数中,并且在末尾附加了base64源地图。

但是我的错误没有被映射到源(Chrome开发者工具),而不是我得到这样的错误如下:

ReferenceError: _ is not defined 
    at eval (eval at <anonymous> (http://localhost:8080/build/abc.js:78:2), <anonymous>:125:21) 

哪里abc.js是我的建成并置文件的名称。点击错误的看法源只是带我到eval功能,像这样:

eval("var __WEBPACK_AMD_DEFINE_RESULT__;!(__WEBPACK_AMD_DEFINE_RESULT__ = (function() {\n /** @type {angular.Module} */\n return angular.module('utils', []);\n}.call(exports, __webpack_require__, exports, module)), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n\n// Load exports\n__webpack_require__(6);\n//@ sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4vbW9kdWxlcy91dGlscy9zcmMvbW9kdWxlLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJrQ0FBQTtBQUNBLGFBQWEsZUFBZTtBQUM1QjtBQUNBLENBQUM7O0FBRUQ7QUFDQSIsInNvdXJjZXNDb250ZW50IjpbImRlZmluZShmdW5jdGlvbigpIHtcbiAgLyoqIEB0eXBlIHthbmd1bGFyLk1vZHVsZX0gKi9cbiAgcmV0dXJuIGFuZ3VsYXIubW9kdWxlKCd1dGlscycsIFtdKTtcbn0pO1xuXG4vLyBMb2FkIGV4cG9ydHNcbnJlcXVpcmUoJy4vZXhwb3J0cy9jb3JlJyk7XG4iXSwic291cmNlUm9vdCI6IndlYnBhY2stbW9kdWxlOi8vIn0="); 

如果我解码的base64我可以看到源映射它产生似乎是有效的:

{ 
    "version":3, 
    "sources":[ 
     "./modules/utils/src/module.js" 
    ], 
    "names":[ 

    ], 
    "mappings":"kCAAA;AACA,aAAa,eAAe;AAC5B;AACA,CAAC;;AAED;AACA", 
    "sourcesContent":[ 
     "define(function() {\n /** @type {angular.Module} */\n return angular.module('utils', []);\n});\n\n// Load exports\nrequire('./exports/core');\n" 
    ], 
    "sourceRoot":"webpack-module://" 
} 

有谁知道为什么这些源地图似乎没有工作? webpack文档在各个领域仍然有点模糊。

请不要我在开发中只使用eval-source-map,并且为生产生成了一个单独的映射文件(这也不起作用)。

+0

不知[这](http://stackoverflow.com/questions/25425072/is-this-a-chrome-bug-or-is -my-use-of-use-strict-and-eval-invalid/25425149#25425149)可能有关系吗? –

回答

0

这种类型的 'devtool' 帮我

devtool: 'eval'