ibe*_*dev 7 typescript gulp visual-studio-2015 gulp-typescript
这是几天前工作正常的事情,所以我不确定自那时以来发生了什么变化(除了更新到ASP.NET Core RC2并为我记得安装VS2015的某些扩展)
问题是当从VS2015运行Gulp任务来编译我的打字稿文件时,如果它出现错误,例如:
[10:02:54] Compiling typescript into javascript
[10:02:56] TypeScript: 1 semantic error
[10:02:56] TypeScript: emit succeeded (with errors)
[10:02:56] Finished 'compile' after 2.47 s
Process terminated with code 0.
Run Code Online (Sandbox Code Playgroud)
没有任何错误描述.
在CMD:
$ tsc -v
Version 1.8.10
Run Code Online (Sandbox Code Playgroud)
在VS2015 Package Manager控制台中:
PM> tsc -v
Version 1.8.10
Run Code Online (Sandbox Code Playgroud)
所以我认为VS2015至少在PATH中使用相同的打字稿编译器,这应该不是问题.这也是最新版本,但我尝试过1.7,同样的事情发生了.
我的任务:
gulp.task('compile', function () {
log('Compiling typescript into javascript');
return gulp
.src(config.allts)
.pipe($.sourcemaps.init())
.pipe($.typescript({
noImplicitAny: true,
target: 'ES5'
}))
.pipe($.sourcemaps.write('.'))
.pipe(gulp.dest(config.compileFolder));
});
Run Code Online (Sandbox Code Playgroud)
我正在使用:
"gulp-typescript": "2.10.0"
Run Code Online (Sandbox Code Playgroud)
虽然我尝试过最新的:
"gulp-typescript": "2.13.4"
Run Code Online (Sandbox Code Playgroud)
没有运气.
据我所知,我在项目的根目录中不需要tsconfig.json,因为我正在使用gulp-typescript并且我已经在gulp任务本身传递了compilerOptions,所以我删除了tsconfig.json,因为它似乎没有要使用的.
如果我从gulp任务中删除所有compilerOptions:
gulp.task('compile', function () {
log('Compiling typescript into javascript');
return gulp
.src(config.allts)
.pipe($.sourcemaps.init())
.pipe($.typescript({
//removed
}))
.pipe($.sourcemaps.write('.'))
.pipe(gulp.dest(config.compileFolder));
});
Run Code Online (Sandbox Code Playgroud)
我没有描述也得到更多的语义错误.
[10:12:57] Compiling typescript into javascript
[10:13:00] TypeScript: 184 semantic errors
[10:13:00] TypeScript: emit succeeded (with errors)
[10:13:01] Finished 'compile' after 3.83 s
Process terminated with code 0.
Run Code Online (Sandbox Code Playgroud)
所以选项肯定被使用.
如果在我的CMD中,我会转到我有一个打字稿的文件夹,并尝试使用以下命令编译它:
C:/>Sample/app> tsc mytestfile.ts
Run Code Online (Sandbox Code Playgroud)
我可以正确地看到所有打字稿编译错误.
知道我的VS2015或我的gulp-typescript可能有什么问题吗?
更新:我尝试使用gulp-tsc而不是gulp-typescript,它运行良好.所以问题必须是gulp-typescript
gulp.task('compile', function () {
log('Compiling typescript into javascript');
return gulp
.src(config.allts)
.pipe($.sourcemaps.init())
.pipe($.tsc({
noImplicitAny: true,
target: 'ES5'
}))
.pipe($.sourcemaps.write('.'))
.pipe(gulp.dest(config.compileFolder));
});
Run Code Online (Sandbox Code Playgroud)
如果您安装了 Microsoft .Net Core 1.0.0 RC2 Tooling Preview 1。似乎存在问题:安装工具预览 1 后,未显示 TypeScript 错误 #526
.Net Core 1 / 工具预览 2 发布后更新
更新到/安装 .Net Core 1.0 发行版(将工具更新到预览版 2)可以解决此问题。
在此之前,卸载工具预览 1 并重新安装 vs 2015 的 Web 开发工具将解决不显示错误详细信息的问题。
我遇到过同样的问题。因为我没有使用 .Net Core 1 RC2 Preview 的功能。我能够通过 Github 上的错误报告中提到的解决方法解决打字稿错误未显示的问题:


这样做之后,我可以再次在任务运行程序资源管理器中看到打字稿错误消息。

| 归档时间: |
|
| 查看次数: |
1893 次 |
| 最近记录: |