2013-10-08 13 views
5

Ho la seguente struttura di directory:grugnito-dattiloscritto non produce file JS in specificato `dest`

root 
| 
|_ package.json 
|_ Gruntfile.js 
| 
|_ javascripts/ 
    |_ ts/file.ts 

Nel Gruntfile ho questo:

//Project Config 
grunt.initConfig({ 
    pkg: grunt.file.readJSON('package.json'), 

    typescript: { 
     base: { 
      src: ['./javascripts/ts/*.ts'], 
      dest: './javascripts/' 
     } 
    }  
}); 

mi aspetto che i file js essere nella directory javascripts/. Tuttavia quando ho eseguito grunt typescript, crea questa struttura di directory strano:

root 
| 
|_ package.json 
|_ Gruntfile.js 
| 
|_ javascripts/ 
    |_ ts/file.ts 
    |_ javascripts/ 
     |_ ts/ 
     |_ file.js 

mi aspetto che il compilato file.js a comparire nella directory originale javascripts/. Perché è così? Cosa devo scrivere per ottenere i file compilati .js nella cartella desiderata?

+0

Ho scritto grunt-ts. Dagli un giro. Basta dire;) – basarat

+0

@basarat 'grunt-ts' risolve questo problema! – Jatin

risposta

5

Vedendo l'uscita Vorrei assumere l'proceda in questo modo:

typescript: { 
    base: { 
     src: ['./javascripts/ts/*.ts'], 
     dest: '../../javascripts/' 
    } 
} 

Personalmente ho scritto e mantenere grunt-ts: https://npmjs.org/package/grunt-ts

+2

+1 per fornire una soluzione che non implichi il proprio software * in aggiunta * alla fornitura di un collegamento al proprio software –

1

Un'altra opzione è quella di utilizzare il base_path config:

//Project Config 
grunt.initConfig({ 
    pkg: grunt.file.readJSON('package.json'), 

    typescript: { 
     base: { 
      src: ['./javascripts/ts/*.ts'], 
      dest: './javascripts/', 
      options: { 
       base_path: './javascripts/ts' 
      } 
     } 
    }  
}); 
Problemi correlati