2016-01-31 14 views
6

DomandaGrunt tipografico non riesce a trovare nucleo angolare

Perchè non il mio compilatore Grunt tipografico trovare il nucleo angolare?

Suppongo che abbia qualcosa a che fare con i percorsi in modo che il compilatore non trovi le librerie nella directory node_modules.

errore

dattiloscritto/add.component.ts (1,25): errore TS2307: Impossibile trovare il modulo 'angular2/core'.

installazione

Gruntfile.js Task

typescript: { 
    all: { 
     src: ['typescript/**/*.ts'], 
     dest: 'javascript/frontend', 
     options: { 
      target: "es5", 
      module: "system", 
      moduleResolution: "node", 
      emitDecoratorMetadata: true, 
      experimentalDecorators: true, 
      removeComments: false, 
      noImplicitAny: false 
     } 
} 

dattiloscritto/add.component.ts

import {Component} from 'angular2/core'; 

@Component({ 
    selector: 'mytest', 
    template: '<h1>test</h1>' 
}) 
export class AppComponent { } 

node_modules

  • Include angular2
  • Include dattiloscritto

filepaths

app -- node_modules 
    -- typescript 
     -- app.component.ts 
    -- Gruntfile.js 
    -- package.json 

Usato libs/quadri/tutorial

+0

Sono un n00b Angular2 ma la maggior parte degli esempi che vedo utilizzare Gulp. Al momento stiamo esaminando il Webpack per le nostre build. –

risposta

3

Proprio ora ho avuto lo stesso problema esatto. L'esecuzione di grunt in modalità dettagliata mostrava il contenuto del file di configurazione ts generato dalla configurazione di grunt. Guardando più da vicino, questo ha rivelato che l'opzione moduleResolution non viene utilizzata affatto. Ma, d'altra parte, non è stato descritto né sulla pagina ufficiale di dattiloscritto.

In ogni caso, per farla breve: ho usato il pacchetto grunt-ts invece e tutto ha funzionato bene! Ho inviato il mio config per Sua comodità :-)

module.exports = function(grunt) { 
 

 
    grunt.initConfig({ 
 
    ts: { 
 
     base: { 
 
     src: ['src/**/*.ts'], 
 
     dest: 'dist', 
 
     options: { 
 
      module: 'system', 
 
      moduleResolution: 'node', 
 
      target: 'es5', 
 
      experimentalDecorators: true, 
 
      emitDecoratorMetadata: true, 
 
      noImplicitAny: false 
 
     } 
 
     } 
 
    } 
 
    }); 
 

 
    grunt.loadNpmTasks('grunt-ts'); 
 

 

 
    grunt.registerTask('default', ['ts']); 
 
};

+0

Ty. Ci proveremo oggi. – NDY

+0

ha fatto il lavoro, ty :) – NDY

+2

Quando eseguo il comando 'tsc' funziona bene ma usando la stessa configurazione di quando eseguo grunt, ho cose del genere: 'app/main.ts (1,1): errore TS6053: File '/Users/jbleach/workspaces/nox/noxApp/WebContent/app/node_modules/angular2/typings/browser.d.ts' non trovato. node_modules/angular2/platform/browser.d.ts (77,90): errore TS2304: impossibile trovare il nome "Promise". node_modules/angular2/src/common/pipes/async_pipe.d.ts (25,38): errore TS2304: impossibile trovare il nome "Promise". node_modules/angular2/src/core/application_ref.d.ts (83,60): errore TS2304: impossibile trovare il nome "Promise". – Justin