7
私はtypescript @ next(バージョン2.1.0-dev.20160812を使用しています)を使用しています。Typescript 2.0で動作するArray.prototype.includesを取得できません
Arrays.prototype.includesを使用しようとするとエラーが発生します。
たとえば、このコード
let myItems: Array<string>;
let exists: boolean = myItems.includes('blah');
は、次のエラーを生成します
Property 'includes' does not exist on type 'string[]'.at line 124 col 26
は、これが私のtsconfig.jsonです:
{
"compileOnSave": true,
"compilerOptions": {
"module": "es6",
"target": "es6",
"moduleResolution": "node",
"allowSyntheticDefaultImports": true,
"noImplicitAny": true,
"sourceMap": true,
"outDir": "ts-build",
"jsx": "preserve"
},
"exclude": [
"node_modules"
]
}
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/includesによると、ES2016(AKA ES7)にincludeが追加され、ES6を対象としているのでそのメソッドを使用しないでください(またはポリフィルが必要です)。あなたは 'myItems.indexOf( 'blah')> = 0'を使うことができます –
@JBNizetは私がES7をターゲットにしなければならないという意味ですか?私はes5にトランスバイルするためにバベルを使用しています – methodex
@JBNizetはes7をターゲットできないようです。 TS @ NextにArray.prototype.includesの型があります。なぜこれがまだうまくいかないのか分かりません。 – methodex