10

gulp-typescript を使用して TS を JS にトランスコンパイルしているときに、このエラー メッセージが表示されます。ゲッター/セッターに ES5 機能を使用しようとしています。

エラー TS1056: アクセサーは、ECMAScript 5 以降を対象とする場合にのみ使用できます

トランスコンパイラが es5 をターゲットにするようにするにはどうすればよいですか?

target = es5タイプスクリプトに設定して渡すことを提案するソリューションをグーグルで検索しました。tsconfig.json を使用して次のことを行いました

tsconfig.js

{
  "compilerOptions": {
    "target": "es5"
  },
  "files": []
}

ぐるぐるタスク

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()));
});

ログ出力

ここに画像の説明を入力

4

4 に答える 4

4

私がしたことは、この「tsc --target ES5 YourFile.ts」で ts ファイルをコンパイルすることです

于 2016-12-17T01:39:32.967 に答える
2

gulp-typescript プラグインには "target" というオプションがあります。tsconfig.json ファイルを設定しても効果がないことがわかりましたが、gulp タスクでターゲットを es5 に変更すると問題なく動作しました。

プラグインのオプション

...
    .pipe(typescript(tsProject(), { target: 'ES5'}))
...
于 2016-12-22T17:33:54.037 に答える
0

これを試して

  • terminal/cmd に移動し、ts ファイルが存在するディレクトリに移動します。
  • 次のコマンドを使用します。tsc filename.ts --ターゲット ES5
于 2018-04-20T13:30:03.083 に答える