Conflito de digitação SystemJS Typescript
Atualmente, estou investigando o Angular2, vindo de um fundo do AngularJS. Nesse assunto, eu também estou olhando para SystemJS e Typescript.
No entanto, eu tenho um problema ao executar o Angular2 usando as tipagens Typescript e SystemJS. O uso do Typescript sem nenhuma digitação funciona conforme o esperado, mas assim que tento carregar qualquer módulo da digitação Angular2, o SystemJS parece não conseguir resolvê-lo.
Pelo que li, as tipagens são enviadas com o angular2.dev.js, desde que eu importe isso, eu ficarei bem?
O erro tem alguma semelhança comhttps://github.com/systemjs/systemjs/issues/610, mas infelizmente suas soluções não funcionaram para mim.
Infelizmente, minha experiência com o SystemJS e o Typescript é nula, e estou apenas tentando configurar um sistema para aprender. Todas as bibliotecas estão atualizadas e foram instaladas com o npm. A construção resultante é hospedada por um servidor expresso do NodeJS, enquanto os arquivos Typescript e suas tipagens não.
O erro que estou recebendo é:
GET http://localhost:8000/angular2/angular2 404 (Not Found)
Aqui está um extrato da cabeça do meu 'index.html':
<head>
<script src="assets/js/lib/traceur.js"></script>
<script src="assets/js/lib/system.src.js"></script>
<script src="assets/js/lib/Rx.js"></script>
<script src="assets/js/lib/angular2.dev.js"></script>
<script>
System.config({
packages: {
assets: {
format: 'register',
defaultExtension: 'js'
},
}
});
System.import( 'assets/js/boot' )
.then( null, console.error.bind( console ));
</script>
</head>
O arquivo typescript boot.ts (eu apenas adicionei o bootstrap (), para que o angular2 seja incluído na compilação):
import { bootstrap } from 'angular2/angular2';
bootstrap();
console.log( 'test' );
e o boot.js resultante após a compilação do tsc:
System.register(['angular2/angular2'], function(exports_1) {
var angular2_1;
return {
setters:[
function (angular2_1_1) {
angular2_1 = angular2_1_1;
}],
execute: function() {
angular2_1.bootstrap();
console.log('test');
}
}
});
//# sourceMappingURL=boot.js.map
tsdconfig.json:
{
"compilerOptions": {
"target": "ES5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": true,
"noImplicitAny": false
},
"exclude": [
"node_modules"
]
}
Qualquer ajuda apreciada muito, tenha umas boas férias! :)