我很难导入模块A:
export module A {
export class A_Class {
}
}
进入我的模块B:
import { A } from "./a";
let a = new A.A_Class();
我的tsconfig.json
如下:
{
"compilerOptions": {
"target": "esnext",
"module": "esnext",
"noImplicitAny": true,
"removeComments": true,
"preserveConstEnums": true,
"sourceMap": true
},
"compileOnSave": true,
"files": [
"a.ts",
"b.ts",
]
}
我的cshtml
具有以下脚本部分:
<script type="module" src="~/Scripts/app/b.js"></script>
Chrome浏览器给我错误:
http://localhost:64518/Scripts/app/a net::ERR_ABORTED 404 (Not Found)
对于line 1
上的b.js
:
import { A } from "./a";
我完全不了解主意,尝试了es6
,commonjs
等的许多组合,而import
上的错误仅稍有变化。
我正在使用Typescript 3.0
。
答案 0 :(得分:1)
尝试更改此内容:
import { A } from "./a";
对此:
import { A } from "./a.js";
文件“ a”实际上不存在,因此Chrome无法找到它。 a.js
应该存在。
如果您是在服务器后面运行此程序,或者正在使用SystemJS之类的模块加载器,则可以在没有文件扩展名的情况下将请求添加.js
到请求中(如果文件没有)找到,否则您需要在导入中手动添加扩展名。