Vscode-ng-language-service: Atualize o plugin para usar o Angular 6

Criado em 25 jun. 2018  ·  15Comentários  ·  Fonte: angular/vscode-ng-language-service

O plug-in ainda é construído em relação ao Angular 5, deve ser atualizado para o Angular 6. Pode resolver # 256, e este comentário sobre um problema do Angular sugere que é necessário que o novo verificador de tipo apareça (?), O que faria

<p *ngIf="foo">{{foo.length}}</p>

pare de marcar foo.length quando strictNullChecks estiver ligado.

Como um aparte, se esse comentário estiver errado e esse caso extremo ainda não for tratado, mesmo quando construído com o Angular mais recente, por favor, me avise e abrirei um problema separado para garantir que ele seja rastreado. Achei que era sobre isso que o nº 71 estava falando, mas é um caso separado. Espero que esta seja uma solução fácil e também cubra *ngIf="foo && (foo.length > 2)" vermelha foo.length (embora o operador and deva remover null do tipo de foo antes de avaliar).

Comentários muito úteis

Este plugin é basicamente inutilizável para nós agora, pois aproveitamos as vantagens dos recursos do TS 2.7, como strictPropertyInitialization . Por causa disso, nossos arquivos HTML são cobertos por erros como este:

[Angular] Identifier 'xxx' is not defined. '<anonymous>' does not contain such a member

O Angular 6 já está no mercado há 2 meses - seria bom ver este plugin atualizado.

Todos 15 comentários

Talvez duplicado de # 256

Eu mencionei esse problema, mas acho que isso deve permanecer aberto como algo original porque a) pode ser possível resolver # 256 sem mudar para Angular 6 eb) pode ser possível construir contra Angular 6 sem realmente resolver o modelo - problema de escopo que dou como exemplo. Gostaria de ter certeza de que meu problema específico (linhas vermelhas incorretas nos modelos) realmente seja resolvido.

Este plugin é basicamente inutilizável para nós agora, pois aproveitamos as vantagens dos recursos do TS 2.7, como strictPropertyInitialization . Por causa disso, nossos arquivos HTML são cobertos por erros como este:

[Angular] Identifier 'xxx' is not defined. '<anonymous>' does not contain such a member

O Angular 6 já está no mercado há 2 meses - seria bom ver este plugin atualizado.

O trabalho está acontecendo neste plugin? Vejo que o último commit foi há mais de 6 meses.

@JitinDhillon Parece que foi abandonado. Infelizmente, não conheço nenhum garfo ou alternativa mantida.

É uma pena que tenha sido abandonado.

@chuckjaz @DBosley é possível obter algumas informações sobre a intenção da equipe Angular de manter este projeto vivo? Existem muitas questões em aberto gritantes no momento e parece que este projeto está abandonado. Se vocês não estão mais mantendo isso, é possível designar outra pessoa da equipe Angular?

Edit: acabei de notar que @chuckjaz não está ativo no Github há quase um ano, então apenas para tentar cutucar alguns outros membros do Angular: @IgorMinar @vicb @petebacondarwin ?

Ei pessoal, acabei de fazer um PR para o branch master para oferecer suporte ao Angular v6 mais recente. (# 276). Preciso de alguém para me ajudar a dar uma olhada nessas mudanças.

v0.1.10 foi lançado com angular-language-service 6.1 e TS 2.7, obrigado @kyliau

Ainda recebo o erro "não contém esse membro" para myControl.errors?.someErrorName . Espera-se que isso seja corrigido agora que está usando a versão mais recente do serviço de idioma / TS?

Da mesma forma. Estou na versão 0.1.10 agora, mas ainda pareço estar recebendo todos os erros espúrios que recebia antes.

Aqui está um exemplo de um caso em que o serviço de linguagem reclama sobre um valor anulável, embora eu tenha uma verificação de *ngIf="model !== null redor.

model-can-not-be-null

Sim, pelo que eu posso dizer, o escopo aprimorado para ngIf que deveria vir com o novo serviço de idioma, não está funcionando. Outros tipos de estreitamento também não funcionam. Por exemplo, eu tenho uma classe com um método isFoo(x: any): x is Foo . O compilador AOT reconhece corretamente isso como estreitando o tipo da variável passada para Foo , mas recebo erros "não contém tal membro" no código quando faço referência a membros Foo dentro de *ngIf="isFoo(thing)" .

Fechando isso, já que como @zacnomore mencionou, a versão mais recente agora está usando @angular/language-service versão 8.
Seguindo em frente, garantirei que a extensão seja mantida atualizada com o lançamento Angular.

Este problema foi bloqueado automaticamente devido à inatividade.
Registre um novo problema se você estiver encontrando um problema semelhante ou relacionado.

Leia mais sobre nossa política de bloqueio automático de conversas .

_Esta ação foi executada automaticamente por um bot._

Esta página foi útil?
0 / 5 - 0 avaliações