Salve a tutti,
da poco ho avviato un progetto in javascript es 5, avanzando con il numero di righe e quindi anche con la complessit� di lettura del codice, ho deciso di passare all'uso di typescript. Prima di passare completamente a typescript ho deciso di fare qualche piccola prova e acquisire un po' di domestichezza con questo tool. Sto usando visual code e sto trovando dei problemi nel far funzionare queste poche righe di codice. Ho cercato in giro per internet ma non trovo nulla che riesca a far partire questo piccolo programma. Mi da un errore veramente strano, nella fase di runtime mi indica un errore nel file .ts.
Ma non dovrebbe essere interpretato solo il codice .js? Cosa glie ne importa del file .ts?
Mi segna la prima riga nel del file .ts dicendo 'require is not define'.
prova.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>var exports = {};</script>
</head>
<body>
<script src="type.js"></script>
</body>
</html>
type.ts
import {Pippo} from "./classe";
var a = new Pippo('gino','malandrino',18);
alert(a.getNome + ' ' + a.getCognome + ' ha ' + a.getEta + ' anni.');
classe.ts
export class Pippo{
private nome: string;
private cognome: string;
private eta: number;
constructor(nome: string,cognome: string,eta: number){
this.nome = nome;
this.cognome = cognome;
this.eta = eta;
}
get getNome(): string{
return this.nome;
}
set setNome(nome: string){
this.nome = nome;
}
get getCognome(): string{
return this.cognome;
}
set setCognome(cognome: string){
this.cognome = cognome;
}
get getEta(): number{
return this.eta;
}
set setEta(eta: number){
this.eta = eta;
}
}
metto anche i file di configurazione per la transpilazione
tasks.json
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "3.0.1",
"tasks": [
{
"type": "typescript",
"tsconfig": "tsconfig.json",
"problemMatcher": [
"$tsc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
tsconfig.json
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"sourceMap": true
/*"outFile": "./pippo.js"*/
},
"files": [
"type.ts"
],
"include": [
"src"
]
}