我使用仅一个加载程序ts-loader的webpack创建了一个裸项目。 Webpack因以下错误而失败:
ERROR in ./app.ts
Module build failed: TypeError: Cannot call method 'charCodeAt' of undefined
at getRootLength (/home/ravioli/IdeaProjects/dummyWebpack/node_modules/ts-loader/node_modules/typescript/bin/typescript.js:997:18)
at Object.isRootedDiskPath (/home/ravioli/IdeaProjects/dummyWebpack/node_modules/ts-loader/node_modules/typescript/bin/typescript.js:1051:16)
at rootReferencePath (/home/ravioli/IdeaProjects/dummyWebpack/node_modules/ts-loader/index.js:72:23)
at /home/ravioli/IdeaProjects/dummyWebpack/node_modules/ts-loader/index.js:87:93
at Array.map (native)
at ensureDependencies (/home/ravioli/IdeaProjects/dummyWebpack/node_modules/ts-loader/index.js:87:35)
at Object.loader (/home/ravioli/IdeaProjects/dummyWebpack/node_modules/ts-loader/index.js:103:5)
在原始Javascript文件上进行测试时,Webpack会按预期运行。
当使用Typescript文件和ts-loader时,会发生错误,错误的根源在堆栈中(如您在堆栈中所见)。
删除以下行即可解决问题:
///<reference path="testi.d.ts" />
(文件的内容不会影响该错误-我已经检查过)。这是示例项目的链接,从src_ts文件夹运行
webpack
:https://github.com/ravitb/dummyWebpack
我在这里想念什么?
最佳答案
这是ts-loader在TypeScript 1.5中引入的问题,它具有重大更改,而不是坚持使用TypeScript 1.4。我推出了一个新版本(0.3.4),应该注意这一点。对不起,这个问题。
关于typescript - TypeError : Cannot call method 'charCodeAt' of undefined,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29748118/