每当我使用节点在控制台中运行main.js
时,一切都可以正常打印。但是,每当我尝试通过浏览器(通过HTML文件)运行它时,都不会在控制台上打印任何内容。
但是,当我注释掉Vector.ts
代码中对main.js
的所有引用时,就会打印“ Hello,World”。我相信这与导入有关,但是我不确定-我对Web开发总体而言是新手。
代码:
main.ts
/// <reference path = "Vector.ts" />
import { Vector } from "./Vector"
class Startup {
public static main(): number {
console.log('Hello, World!!');
//Test Vector classes
let v = new Vector(1, 2);
let w = new Vector(3, 4);
console.log(v.dotProduct(w));
return 0;
}
}
Startup.main();
Vector.ts
export class Vector {
constructor(private a: number, private b: number) {
console.log("TEST");
}
dotProduct(v: Vector) :number {
return this.a * v.a + this.b * v.b;
}
}
tsconfig.json
{
"compileOnSave": true,
"compilerOptions": {
"target": "es2015",
"module": "umd",
"sourceMap": true,
"strict": true,
"noImplicitReturns": true,
"noUnusedParameters": true,
"noUnusedLocals": true,
"watch": true
}
}
答案 0 :(得分:0)
您是否将js方法调用放在document.onLoad()
块中?
我不确定您的完整情况,但有时会发生在HTML完全加载之前调用该方法的情况。也许您可以尝试将js函数调用代码(Startup.main() )
放在document.onLoad()
块中并查看。