TypeScript: Difference between revisions
Jump to navigation
Jump to search
Line 81: | Line 81: | ||
* [https://rawgit.com/fabioparra/TypeScriptExtJSEmitter/master/TypeScriptExtJSEmitter/index.html TypeScript ExtJS Emitter] | * [https://rawgit.com/fabioparra/TypeScriptExtJSEmitter/master/TypeScriptExtJSEmitter/index.html TypeScript ExtJS Emitter] | ||
* [https://gist.github.com/ducin/20c30803fcd28fd3fec38fcc6c05bd8a Beginning of TypeScript] | * [https://gist.github.com/ducin/20c30803fcd28fd3fec38fcc6c05bd8a Beginning of TypeScript] | ||
* [https://www.npmjs.com/package/gulp What is gulp?] |
Revision as of 01:41, 9 May 2018
.gitignore
dist
node_modules
npm-debug.log
person.ts
namespace People {
export class Person {
constructor(private firstName: string, private lastName: string){
//TODO
}
}
}
nation.ts
namespace People {
export class Nation {
private population: Person[] = [];
add(person: Person): void {
this.population.push(person);
}
get count(): number {
return this.population.length;
}
}
}
app.ts
/// <reference path="person.ts" />
/// <reference path="nation.ts" />
import Person = People.Person;
import Nation = People.Nation;
const nation: Nation = new Nation();
nation.add(new Person('John', 'Lennon'));
console.log(nation.count);
package.json
{
"scripts":{
"compile":"./node_modules/.bin/tsc",
"start":"npm run compile && node dist/app.js"
},
"devDependencies":{
"typescript":"^2.0.9"
}
}
tsconfig.json
{
"compilerOptions":{
"target":"es5",
"outFile":"dist/app.js"
},
"files":[
"app.ts"
]
}
Build
npm install
npm start