Pesquisa de site

typescript - Propriedade 'includes' não existe no tipo 'string[]'


Recebendo o erro

A propriedade 'includes' não existe no tipo 'string[]'

em node_modules/ng2-breadcrumb/app/components/breadcrumbService.ts eu estou tentando implementar a funcionalidade de breadcrumb em um aplicativo angular2.

Resposta #1

Adicione "es2016" ou uma versão posterior ao seu array "lib" em tsconfig.json:

{
  "compilerOptions": {
    ...
    "lib": ["es6", "dom", "es2016"],
    ...
    "target": "es5",
    ...
  }
}

Isso deve funcionar desde o TypeScript 2.1.

Um problema relacionado.

Explicação

O método includes em Array é suportado desde ES7 (ES2016). O acima adicionará um arquivo de biblioteca ausente à compilação.

As opções do compilador TypeScript estão documentadas aqui.

Resposta #2

Se você não quiser mudar para es2016, apenas use arr.indexOf(valueToCheck) !== -1.

Resposta #3

Alterar o alvo do compilador para "es2016" em tsconfig.js deve resolver este problema.

Artigos relacionados