我的问题(详细)在这里可能有重复,但我无法得到答案,因为我花了 3 天时间搜索它。我是 typescript 的新手,想使用 ' npm start
' 命令运行一个 TS 项目(而不是其中的任何 angular 2 东西)。请看下面的代码:
我的目录结构是:
myClass.ts(它在模块目录中)
export namespace Classes {
export class NewClass {
constructor(public msg:string){}
displayMessage ():string{
return this.msg;
}
};
};
迎接者.html
<!DOCTYPE html>
<html>
<head><title> TypeScript Greeter </title></head>
<body>
<script src='greeter.js'></script>
</body>
</html>
迎接者.ts
import {Classes} from 'module/myClass';
class Greeter extends Classes.NewClass {
constructor(public greeting: string) {
super('');
}
greet() {
return "<h1>" + this.greeting + "</h1>";
}
};
var greeter = new Greeter("Hello, world!");
var newClass = new Classes.NewClass("This is my message.");
document.body.innerHTML = greeter.greet() + newClass.displayMessage();
包.json
{
"name": "greeter",
"version": "1.0.0",
"description": "Sample TS app",
"main": "greeter.ts",
"scripts": {
"start": "tsc && http-server"
},
"keywords": [
"TS"
],
"author": "",
"license": "MIT",
"dependencies": {
}
}
tsconfig.json
{
"compilerOptions": {
"baseUrl": "./",
"sourceMap": true,
"module": "commonjs",
"outDir": "./out"
},
"files": [
"greeter.ts",
"module/myClass.ts"
]
}
打字.json
{
"globalDependencies": {
"node": "registry:dt/node#6.0.0+20160928143418"
}
}
我的查询是:
在观看了一些教程后,我已经包含了“dt~node”类型,但是在这种情况下是否有必要?
我来自 javascript 背景,所以我不确定如何在我的项目中包含类型文件。我是否需要在 greeter.html 中包含用于输入文件或其他内容的参考路径。请具体说明。
在窗口的命令中运行“npm start”后,我无法使其工作,因为浏览器控制台显示此错误:
如果有人可以指导我解决我的疑问,请提供帮助。谢谢你。