Karma + JSPM + Typescript - 找不到'.ts.js'
Karma + JSPM + Typescript - not found '.ts.js'
主要是试图让 Karma+JSPM 在加载 .ts 文件时发挥出色,但完全没有运气。
我看到一个 discussion repo 和一个精简的例子。
基本上 Karma 中的 JSPM 似乎忽略了 defaultJSExtensions: true
和包级别 "defaultExtension": "ts"
配置,当 运行 在 Karma 中尝试加载文件时出现以下错误:
$ npm test
> karma-jspm-typescript-coverage@1.0.0 test C:\examples\karma-jspm-typescript-coverage
> karma start
18 08 2016 17:29:31.937:INFO [karma]: Karma v1.2.0 server started at http://localhost:1337/
18 08 2016 17:29:31.943:INFO [launcher]: Launching browser Chrome with unlimited concurrency
18 08 2016 17:29:31.974:INFO [launcher]: Starting browser Chrome
18 08 2016 17:29:33.075:INFO [Chrome 52.0.2743 (Windows 7 0.0.0)]: Connected on socket /#jTR10wm0CWNIfrdhAAAA with id 75197348
18 08 2016 17:29:33.317:WARN [web-server]: 404: /src/app/app.spec.ts.js
Chrome 52.0.2743 (Windows 7 0.0.0) ERROR
Error: (SystemJS) XHR error (404 Not Found) loading http://localhost:1337/src/app/app.spec.ts.js
Error: XHR error (404 Not Found) loading http://localhost:1337/src/app/app.spec.ts.js
Error loading http://localhost:1337/src/app/app.spec.ts.js
npm ERR! Test failed. See above for more details.
注意 .ts.js 扩展名。尝试从 karma-typescript-proprocessor 到通过不同的 JSPM 配置加载,而不是 运行 与 live.
试图保留它,这样就不需要管理 .js
编译文件,只使用 .ts
文件。开发服务器和 bundling/build 功能齐全 - 这个测试和覆盖部分是我的最后一个障碍。
如果有任何方向可以给我,请告诉我!
包级别 "defaultExtension": "ts"
不适用,因为业力是 运行 在顶级目录中,比 src
目录高一级,其中包含 config.js 和
baseURL: '.'
如果我在其中复制 app
包配置并在其前面添加 src
,如下所示:
packages: {
"src/app": {
"main": "app",
"defaultExtension": "ts",
"meta": {
"*.ts": {
"loader": "ts"
}
}
},
"app": {
"main": "app",
"defaultExtension": "ts",
"meta": {
"*.ts": {
"loader": "ts"
}
}
}
},
我可以更进一步。我现在得到
Error: (SystemJS) XHR error (404 Not Found) loading http://localhost:9876/jspm_packages/github/frankwallis/plugin-typescript@5.0.9.js
这向我表明 karma-jspm 插件无法在 SystemJS 期望的 URL 上提供源文件
主要是试图让 Karma+JSPM 在加载 .ts 文件时发挥出色,但完全没有运气。
我看到一个 discussion repo 和一个精简的例子。
基本上 Karma 中的 JSPM 似乎忽略了 defaultJSExtensions: true
和包级别 "defaultExtension": "ts"
配置,当 运行 在 Karma 中尝试加载文件时出现以下错误:
$ npm test
> karma-jspm-typescript-coverage@1.0.0 test C:\examples\karma-jspm-typescript-coverage
> karma start
18 08 2016 17:29:31.937:INFO [karma]: Karma v1.2.0 server started at http://localhost:1337/
18 08 2016 17:29:31.943:INFO [launcher]: Launching browser Chrome with unlimited concurrency
18 08 2016 17:29:31.974:INFO [launcher]: Starting browser Chrome
18 08 2016 17:29:33.075:INFO [Chrome 52.0.2743 (Windows 7 0.0.0)]: Connected on socket /#jTR10wm0CWNIfrdhAAAA with id 75197348
18 08 2016 17:29:33.317:WARN [web-server]: 404: /src/app/app.spec.ts.js
Chrome 52.0.2743 (Windows 7 0.0.0) ERROR
Error: (SystemJS) XHR error (404 Not Found) loading http://localhost:1337/src/app/app.spec.ts.js
Error: XHR error (404 Not Found) loading http://localhost:1337/src/app/app.spec.ts.js
Error loading http://localhost:1337/src/app/app.spec.ts.js
npm ERR! Test failed. See above for more details.
注意 .ts.js 扩展名。尝试从 karma-typescript-proprocessor 到通过不同的 JSPM 配置加载,而不是 运行 与 live.
试图保留它,这样就不需要管理 .js
编译文件,只使用 .ts
文件。开发服务器和 bundling/build 功能齐全 - 这个测试和覆盖部分是我的最后一个障碍。
如果有任何方向可以给我,请告诉我!
包级别 "defaultExtension": "ts"
不适用,因为业力是 运行 在顶级目录中,比 src
目录高一级,其中包含 config.js 和
baseURL: '.'
如果我在其中复制 app
包配置并在其前面添加 src
,如下所示:
packages: {
"src/app": {
"main": "app",
"defaultExtension": "ts",
"meta": {
"*.ts": {
"loader": "ts"
}
}
},
"app": {
"main": "app",
"defaultExtension": "ts",
"meta": {
"*.ts": {
"loader": "ts"
}
}
}
},
我可以更进一步。我现在得到
Error: (SystemJS) XHR error (404 Not Found) loading http://localhost:9876/jspm_packages/github/frankwallis/plugin-typescript@5.0.9.js
这向我表明 karma-jspm 插件无法在 SystemJS 期望的 URL 上提供源文件