2016-03-02 48 views
0

你好我想配置一口編譯我的打字稿這裏文件是我到目前爲止有:在多個錯誤使用一飲而盡,打字稿結果設置打字稿

const gulp = require('gulp'); 
const del = require('del'); 
const typescript = require('gulp-typescript'); 
const tscConfig = require('./tsconfig.json'); 
const util = require('gulp-util'); 

var paths = { 
    npmSrc: "./node_modules/", 
    libTarget: "./wwwroot/lib/", 
    appTarget: "./wwwroot/app/" 
} 

gulp.task('tsBuild', function() { 

    return gulp.src('App/**/*.ts') 
     .pipe(typescript(tscConfig)) 
     .pipe(gulp.dest(paths.appTarget)); 
} 

我tsConfig看起來是這樣的:

{ 
    "compilerOptions": { 
    "outDir": "./wwwroot/app/", 
    "target": "es5", 
    "module": "system", 
    "sourceMap": true, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "moduleResolution": "node", 
    "removeComments": false, 
    "noImplicitAny": true, 
    "suppressImplicitAnyIndexErrors": true 
    }, 
    "exclude": [ 
    "node_modules", 
    "wwwroot" 
    ] 
} 

這是錯誤消息我得到:

應用程序\ bootstrap.ts(1,25):錯誤TS2307:找不到模塊「angular2 /平臺進行RM /瀏覽器」。

App \ template \ template.component.ts(1,1):錯誤TS1148:無法編譯 模塊,除非'--module'標誌與有效模塊 類型一起提供。考慮在 'tsconfig.json'文件中設置'模塊'編譯器選項。

App \ template \ template.component.ts(1,25):錯誤TS2307:無法找到模塊'angular2/core'。應用程序\模板\ template.component.ts(8,14):

錯誤TS1219:用於裝飾實驗的支持是一個特點,就是 在將來的版本中改變。設置 'experimentalDecorators'選項以刪除此警告。

感覺就好像它沒有讀取tsconfig文件。我的文件最終會正確編譯。

。任何人有任何想法我做錯了什麼?

回答

1

下面是一口的任務,應該很好地工作:

const typescript = require('gulp-typescript'); 

gulp.task('tsBuild', function() 
{ 
    var tsProject = typescript.createProject('tsconfig.json'); 

    var tsResult = tsProject.src() 
     .pipe(typescript(tsProject)); 

    return tsResult.js.pipe(gulp.dest(paths.appTarget)); 
}); 

它總是容易排除tsconfig不必要的文件,而不是明確指定所有必要的。

0

嘗試:

const tscConfig = require('./tsconfig.json').compilerOptions;