2016-07-02 25 views
6

Sto utilizzando WebStorm 2016.1.3 per un progetto Angular 2 con dattiloscritto. Quando abilito il compilatore ts in WebStorm e modifico un file ts (che dovrebbe poi essere compilato) ottengo il seguente avviso: Warning:File was not compiled because there is no a reference from tsconfig.json e il file non è compilato.WebStorm "Avviso: il file non è stato compilato perché non c'è un riferimento da tsconfig.json"

mia struttura dei file di progetto/cartella è vicino alla guida di stile raccomandato da Angular 2:

tutti i miei file ts trovano in una cartella script. L'app radice si trova in quella cartella e ogni componente ha una propria sottocartella che contiene uno ts e un file html. I servizi condivisi ecc si trovano in una sottocartella Shared.

mio tsconfig assomiglia a questo ed è nella cartella principale del progetto (la cartella principale della cartella script):

{ 
    "compilerOptions": { 
    "outDir": "wwwroot/app", 
    "target": "es5", 
    "module": "commonjs", 
    "moduleResolution": "node", 
    "inlineSourceMap": true, 
    "inlineSources": true, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "removeComments": false, 
    "noImplicitAny": false 
    }, 
    "exclude": [ 
    "node_modules", 
    "wwwroot" 
    ] 
} 

Fatta eccezione per i file ts direttamente in script tutti gli altri in WebStorm aperto e modificato ts file comportare l'avviso sopra e non compilare. Nella console dattiloscritto in WebStorm il compilatore dice che stava compilando il file modificato (ad esempio il rilevamento delle modifiche sembra funzionare) ma non emette un file transpiled. Tuttavia, quando WebStorm avvia TUTTI i file ts in tutte le sottocartelle vengono compilati correttamente. Inoltre, se uso tsc manualmente o tramite gulp non ottengo alcun problema e tutto si compila come dovrebbe, il che mi dice che il mio tsconfig è OK. Ho provato a specificare il mio ambito nelle opzioni del compilatore di dattiloscritto di WebStorm. Non ha fatto differenza L'opzione Track changes è attiva. Ho provato con e senza l'opzione Resolve objects using tsconfig.json su. Non ha fatto differenza

Non riesco a capire questa cosa. Qualcun altro ha incontrato, e si spera, risolto questo problema?

+0

quale 'Scope' stai usando? Dovrebbe essere il valore predefinito 'File di progetto' – anstarovoyt

+0

Sì, questo è quello che ho avuto in un primo momento, poiché è l'impostazione predefinita. Questo è quando il problema è sorto inizialmente. Ho cambiato lo scope per vedere se ha fatto la differenza. Non è stato così. – hholtij

risposta

0

Prova ad aggiungere sotto blocco nel tsconfig.json

"files": [ 
    "typings/tsd.d.ts", 
    "main.ts" 
    ] 

Vedere se questo aiuta.

+0

L'aggiunta di questo blocco causa errori di compilazione. Non ho una tipizzazione/tsd.d.ts. Il mio è typings/index.d.ts, che ho usato invece. – hholtij

+0

Webstorm non risolve i file collegati ai file, tsc fa – Nikos

1

Nel caso in cui gli altri incorrere in questo problema:

Credo di aver trovato quello che causa il problema. Alcuni dei miei file avevano incantesimi un po 'insoliti (nel mondo dattiloscritto). Ad esempio uno dei miei servizi è stato scritto "ApiService.ts". Dopo averlo modificato in "apiService.ts" il problema è scomparso. Un altro è stato scritto "hhPager.component.ts". Anche a WebStorm non piaceva. Ora l'ho cambiato in "pager.component.ts" e WebStorm si è rilassato e si è comportato.

L'ho portato all'attenzione di JetBrain e questo è attualmente (8 luglio 2016) un bug nel loro tracker di problemi (https://youtrack.jetbrains.com/issue/WEB-22290).

+0

Grazie! Ho dovuto rinominare attach-magnify.ts per allegareMagnify.ts e ora compila intellij. E grazie per aver reso JetBrains consapevole di questo problema :) –

+0

Solo un'osservazione, se 'apiService.ts' funziona e' pager.component.ts' funziona perché diavolo sarebbe 'hhPager.component.ts' non funziona? Ciò significa che 'apiService.component.ts' non funzionerà ... Due" h "non è un refuso ... Ho riscontrato questo errore e la soluzione di cui sopra non ha aiutato. –

Problemi correlati