gip*_*ouf 11 javascript visual-studio-2012 typescript
我不明白我做错了什么.我在VS2012中创建了一个TypeScript项目,并在一个名为"Physics"的子目录中创建了一个名为"Vector.ts"的文件:
// Module
module Physics {
// Class
export class Vector {
constructor(public x: number) { }
}
}
Run Code Online (Sandbox Code Playgroud)
另外,我有以下app.ts文件:
/// <reference path="Physics/Vector.ts" />
window.onload = () => {
var vector = new Physics.Vector(6);
};
Run Code Online (Sandbox Code Playgroud)
该项目已成功编译,但是当我启动它时,我得到以下异常:
0x800a1391 - JavaScript运行时错误:'Physics'未定义
我不明白我做错了什么...
谢谢.
如果您使用带有模块加载程序(如Require.Js)的AMD样式模块,则需要import语句.请参阅Steve在此处接受的答案:https://stackoverflow.com/a/14919495/1014822 您的代码如下所示:
import Physics = module("Physics/Vector");
var vector = new Physics.Vector(6);
Run Code Online (Sandbox Code Playgroud)
......你不需要这个: /// <reference path="Physics/Vector.ts" />
如果您不使用模块加载器,则只需确保将Vector.js输出文件包含在html页面中的某个位置,并确保在应用程序文件之前加载它.在这种情况下,您/// <reference path="Physics/Vector.ts" />可以告诉TS在何处找到智能感知等模块.
| 归档时间: |
|
| 查看次数: |
10062 次 |
| 最近记录: |