Angular 4 错误:找不到未指定名称属性的控件。

4
我使用了谷歌地点API,遵循了这篇教程,但是我遇到了以下错误:

无法找到未指定名称属性的控件

有关下面截图中错误的详细信息

我也尝试了这个stackoverflow链接中的所有提示。

代码

<div class="form-group"> 
<input #search
    type="text"
    placeholder="search for location"
    autocorrect="off"
    autocapitalize="off"
    spellcheck="off"
    class="form-control"
    [formControl]="searchControl"
    name="searchControl"> 
</div> 

2
你的代码在哪里? - Amit Chigadani
亲爱的朋友,我贴了截图只是为了让用户更清楚地了解错误。而且错误描述太长了。 - Gauravbhai Daxini
2个回答

23

你应该发布一些代码,我们不是通灵者!

但是看到你的错误,我想说你正在使用响应式表单,并且忘记创建你的响应式表单。

这意味着在你的输入框中,你有 [formControl]=""formControlName="" 属性,但找不到相应的变量。

请问你能发布相关代码吗?


<div class="form-group"> <input placeholder="search for location" autocorrect="off" autocapitalize="off" spellcheck="off" type="text" class="form-control" #search [formControl]="searchControl" name="searchControl"> </div> - Gauravbhai Daxini
2
哥们,你至少可以编辑一下你的问题……而且我还需要你组件的 TypeScript 代码! - user4676340
2
但是你可以尝试将 [formControl]="searchControl" 替换为 formControlName="searchControl" 吗? - user4676340
没问题!记得标记你的问题为已解决。 - user4676340
<div class="form-group" [formGroup]="myGroup"> <input placeholder="search for location" autocorrect="off" autocapitalize="off" spellcheck="off" type="text" class="form-control" #search formControlName="searchControl" name="searchControl"> </div> - Gauravbhai Daxini

2
您的HTML代码看起来很好,我认为这是因为您没有在相应的JavaScript/TypeScript文件中初始化searchControl变量所致。
请将此行添加到JavaScript/TypeScript文件中的类中。
searchControl = new FormControl();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接