このコードを実行しようとしていますが、次のエラーが発生しています:
Animal.ts(10,13):エラーTS1056:アクセサーは、ECMAScript 5以降を対象とする場合にのみ使用できます。 Animal.ts(14,13):エラーTS1056:アクセサーは、ECMAScript 5以降を対象とする場合にのみ使用可能です。
interface IAnimal{
name : string;
sayName():string;
}
class AnimalImpm implements IAnimal{
private _name : string = '[Animal]';
get name():string{
return this._name;
}
set name(name:string){
this._name = name;
}
constructor(name:string){
this.name = name;
}
sayName():string {
console.log(`My name is ${this.name}`);
return "Hello";
}
}
私のために働く唯一のことは、macOSとWindowsでTarget
を指定することでした。
tsc --target es5 script.ts
端末でコマンドを実行できます。
プロジェクトでtsconfig.jsonファイルを設定してみてください。
{
"compilerOptions": {
"target": "es5"
}
"files": []
}
これは、TypeScriptコンパイラーにバージョンを具体的に対象とするように指示します。
私は同じ問題を抱えていました。 docs から読み取ったのは、ファイルを指定するとtsconfig.jsonファイルが無視されるということです。
私のtsconfig.jsonファイル
{
"compilerOptions": {
"target": "es5"
},
"include": [
"*.ts"
]
}
そして、コマンドラインから実行します
tsc && node *.js
私はそれが古い会話であることを知っていますが、ここでの解決策はすべての開発者にとって非常に役立つコマンドになると思います。
ターミナル、コマンドプロンプト、Git Bashなどでこのコマンドを使用すると簡単に解決できます。
tsc --target ES2016 Animal.ts --watch
または
tsc --target es5 Animal.ts --watch
--watch
はオプションであり、変更ごとにコードをコンパイルする必要がないことを意味します。
Windowsでは、
tsc --target es5 filename.ts
オプションは、「es3」、「es5」、「es6」、「es2015」、「es2016」、「es2017」、「esnext」です。 (「なし」)
単一ファイルを扱っている場合、これを行うことができます
tsc your-file.ts --target ES2016 --watch
プロジェクト構成全体でtsconfig.jsonを使用する場合
{ "compilerOptions": { "target": "ES2016" } "files": [] }
ECMAScript数値 "es6"、 "es7"、 "es8"またはリリース年 "ES2015"、 "ES2016"のいずれかを使用できます。 、「ES2017」。
ESNextサポートされている最新のES提案機能をターゲットにします。
Visual Stido 2017を使用していますか?
1- Solution Explorer>右クリックしてプロジェクト
2- [追加]> [新しいアイテム]
3-(検索セクション>これを入力> TypeScript)
4-「TypeScript Json Configuration File」を選択します
それでおしまい
このステップの最後に、tsconfig.jsonがプロジェクトに追加され、デフォルトセットがES5に適用されます
何も変更する必要はありません。プロジェクトを再コンパイルするとエラーが発生します。
Tsc myTS.ts --target ES5を使用してみてください
これは、TypeScriptがECMA script 5コンパイラをTragetする必要があるためです。
ここでは、スイッチをtype scriptコンパイラに渡して、ECMAScriptファイルをターゲットにする必要があります。それを行うには、ターミナルに以下のコードを入力します
tsc(tsファイル).ts-ES5をターゲットにして、bulid jsファイルを実行します
ノード(jsファイル)
Visual Studio CodeでTypeScriptコードをコンパイルしようとすると、同じ問題が発生しました。これにより問題が解決しました。
1)tsconfig.json-target
にcompilerOptions
を追加します。
{
"compilerOptions": {
"target": "es5", // <-- here!
"module": "commonjs",
"sourceMap": true
}
}
2)tasks.json-target
引数を追加します。
{
"version": "2.0.0",
"tasks": [
{
"taskName": "build",
"type": "process",
"command": "tsc",
"args": [
"ts/Program.ts",
"--outDir", "js",
"--sourceMap",
"--watch",
"--target", "es5" // <-- here!
],
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"reveal": "always"
},
"problemMatcher": "$tsc"
}
]
}