我想出了一条错误信息,当我使用gulp typescript将TS翻译成JS时,我得到了一个错误消息。我正在尝试为getter/setter使用ES5特性。
错误TS1056:只有针对ECMAScript 5及更高版本的访问器才可用
如何使转译编译器针对es5?
我在谷歌上搜索了一些解决方案,这些解决方案建议您设置target = es5并将其传递给打字本。我使用tsconfig.json完成了以下操作
tsconfig.js
{
"compilerOptions": {
"target": "es5"
},
"files": []
}gulp任务
import gulp from 'gulp';
import gulpif from 'gulp-if';
import livereload from 'gulp-livereload';
import typescript from 'gulp-typescript';
import args from './lib/args';
const tsProject = typescript.createProject('tsconfig.json');
console.log(tsProject);
gulp.task('scripts-typescript', () => {
return gulp.src('app/scripts/**/*.ts')
.pipe(typescript(tsProject()))
.pipe(gulp.dest(`dist/${args.vendor}/scripts`))
.pipe(gulpif(args.watch, livereload()));
});日志输出

发布于 2016-12-17 01:39:32
我所做的就是用这个"tsc - ES5 ES5 YourFile.ts“编译ts文件。
发布于 2016-12-22 17:33:54
吞咽式语言插件有一个名为"target“的选项。我发现设置tsconfig.json文件没有任何效果,但是当我在吞咽任务中将目标更改为es5时,效果很好。
...
.pipe(typescript(tsProject(), { target: 'ES5'}))
...发布于 2018-04-20 13:30:03
尝尝这个
https://stackoverflow.com/questions/40351763
复制相似问题