3

Я установил @types/jasmine как devDependency.gulp-typescipt и новые типовые типовые типовые типы шрифтов?

Мой глоток задача собрать мою машинопись, как так:

gulp.task('compile:tests', ['compile:typescript', 'clean:tests'], function() { 
    var project = ts.createProject('tsconfig.json', { typescript: typescript }); 

    var tsResult = gulp.src(['spec/**/*spec.ts']) 
     .pipe(ts(project)); 

    return tsResult.js 
     .pipe(gulp.dest('spec/')); 
}); 

и моего tsconfig.json

{ 
    "compilerOptions": { 
     "target": "es6", 
     "module": "commonjs", 
     "moduleResolution": "node" 
    }, 
    "exclude": [ 
     "node_modules" 
    ] 
} 

, но это приводит к ошибкам:

спецификации \ линт .spec.ts (7,1): ошибка TS2304: Не удается найти имя «описать».
spec \ linter.spec.ts (8,3): ошибка TS2304: Не удается найти имя 'it'.
spec \ linter.spec.ts (17,5): ошибка TS2304: Не удается найти имя «ожидать».
spec \ linter.spec.ts (20,3): ошибка TS2304: Не удается найти имя 'it'.

Как я могу получить машинописный текст (при использовании gulp-typescript) для распознавания пиктограмм @types/...?

ответ

2

Обновлено: последняя версия исправляет проблему: установить с

npm install [email protected]

перед глотком-машинопись @ 3: До сих пор моя работа вокруг было включить все @types типизации вручную , например:

gulp.src(['spec/**/*spec.ts', "./node_modules/@types/**/*.d.ts"]) 

Если у вас есть противоречивые версии типографских работ (смотрите здесь вы @types/[email protected]), то вы можете пропустить их, чтобы избежать дубликатов:

gulp.src([ 
    paths.source + '**/*.ts', 
    "node_modules/@types/**/index.d.ts", 
    "!node_modules/@types/**/node_modules/**/index.d.ts"]) 
2

Вы можете использовать project.src() вместо gulp.src(['typings-glob', 'sources-glob']).

** По какой-то причине, в проекте, над которым я работаю, трансляция занимает ~ 3 секунды, когда используется project.src(), поэтому я придерживаюсь опции gulp.src.

+0

Только что испытал это; не работает для меня, если я исключаю node_modules. (без исключения он взрывается с другими ошибками) :( –

+0

вы можете использовать свойство _include_ вместо или с помощью _exclude_. См. [tsconfig schema] (http://json.schemastore.org/tsconfig) –

0

Следующая работа для меня.

{ 
    "compilerOptions": { 
     "target": "es6", 
     "module": "commonjs", 
     "moduleResolution": "node" 
    }, 
    "files": [ 
     "node_modules/@types/**/*.d.ts" 
    ], 
    "exclude": [ 
     "node_modules" 
    ] 
} 

NVM, что не будет работать, и не делает, используя "включать" и "исключить" вместе.