Estou usando o Angular 4 e estou recebendo um erro no console:
Não é possível vincular ao 'ngModel', pois não é uma propriedade conhecida de 'input'
Como posso resolver isto?
angular
typescript
angular-ngmodel
angular-forms
Vijay Kumar
fonte
fonte
FormsModule
aoimports: []
módulo em que você usangModel
. Caso contrário, publique seu código.Respostas:
Para usar a ligação de dados bidirecional para entradas de formulário, você precisa importar o
FormsModule
pacote no seu módulo Angular.EDITAR
Como existem muitas perguntas duplicadas com o mesmo problema, estou aprimorando esta resposta.
Existem duas razões possíveis
Em falta
FormsModule
, portanto, adicione isso ao seu módulo,Verifique a sintaxe / ortografia
[(ngModel)]
na tag de entradafonte
Esta é uma resposta certa. você precisa importar o FormsMoudle
primeiro em app.module.ts
**
** segundo em app.component.spec.ts
Cumprimentos e esperança serão úteis
fonte
O seu
ngModel
não está funcionando porque ainda não faz parte do seuNgModule
.Você precisa informar
NgModule
que possui autoridade para usar emngModel
todo o aplicativo. Você pode fazer isso adicionandoFormsModule
em seuapp.module.ts
->imports
->[]
.fonte
Corri para esse erro ao testar meu Angular 6 App com Karma / Jasmine. Eu já havia importado
FormsModule
no meu módulo de nível superior. Mas quando adicionei um novo componente que usou[(ngModel)]
meus testes começaram a falhar. Nesse caso, eu precisava importarFormsModule
no meuTestBed
TestingModule
.fonte
Todas as soluções acima mencionadas para o problema estão corretas. Mas se você estiver usando carregamento lento,
FormsModule
precisará ser importado no módulo filho que possui formulários. Adicioná-loapp.module.ts
não ajudará.fonte
Em
app.module.ts
acrescentar o seguinte:fonte
Eu tentei todas as coisas mencionadas acima, mas ainda não está funcionando.
mas finalmente encontrei o problema no site Angular. Tente importar o formModule no module.ts.
fonte
Tente adicionar
O código é o mesmo que o acima
fonte
Atualize com o Angular 7.xx , encontre o mesmo problema em um dos meus módulos .
Se estiver no seu módulo independente, adicione estes módulos extras:
Se estiver no seu
app.module.ts
, adicione estes módulos:Uma demonstração simples para provar o caso.
fonte
A resposta para mim foi escrita incorretamente
ngModel
. Eu escrevi assim:ngModule
enquanto deveriangModel
.Todas as outras tentativas obviamente falharam em resolver o erro para mim.
fonte
import { FormsModule } from '@angular/forms';
// <<<< importe-o aquiBrowserModule, FormsModule
// <<<< e aquiEntão, basta procurar
app.module.ts
ou outro arquivo de módulo e certificar-se de terFormsModule
importado ...fonte
No meu caso, adicionei a importação ausente, que era a
ReactiveFormsModule
.fonte
módulo de formulário de importação em app.module.ts.
Em html:
fonte
No meu caso eu mal escrito, eu estava me referindo como ngmodel istead de ng M odelo :) Espero que ajude!
Esperado - [(ngModel)] Real - [(ngmodel)]
fonte
Você deve verificar as seguintes coisas se a ligação bidirecional não funcionar.
<input [(ngModel)]="inputText">
Isso é tudo o que você precisa fazer para que a ligação bidirecional usando o ngModel funcione. Isso é validado até 9
fonte
Se você quiser usar a ligação de dados bidirecional para entradas de formulário, precisará importar o pacote FormsModule no seu módulo Angular. Para mais informações, consulte o tutorial oficial do Angular 2 aqui e a documentação oficial dos formulários
no app.module.ts, adicione as linhas abaixo:
fonte
primeiro importe FormsModule e, em seguida, use ngModel em seu component.ts
Código HTML:
fonte
Se mesmo após a importação do módulo de formulários o problema persistir, verifique se a sua Entrada não possui um atributo "nome" com valor igual a outra entrada na página.
fonte