因此,我买了Mosh's Angular 4 course,却不知道它是Angular 4,而最新的是Angular 6。
是的,我听说4和6之间的编码差异很小,但请听我说。
在有关模板驱动表单的讲座之一中,他使用了以下代码:
<form>
<div class="form-group">
<label for="firstName">First Name</label>
<input <-- WE ARE LOOKING AT THIS ELEMENT
ngModel
name="firstName"
id="firstName"
type="text"
class="form-control" />
</div>
<div class="form-group">
<label for="comment">Comment</label>
<textarea id="comment" cols="30" rows="10" class="form-control"></textarea>
</div>
<button class="btn btn-primary">Submit</button>
</form>
所以我在Angular中重复一遍,我安装了(后来我发现他正在使用4,而我已经安装了6),并且工作正常。
现在,他想通过将ngModel
对象打印到控制台来显示ngModel
的外观,因此他创建了一个变量并通过将log(msg) { console.log(msg); }
添加到{{1 }}文件,现在上面提到的.ts
看起来像这样:
<intput>
因此,他编译了该代码,它可以正常工作,控制台可以很好地记录<input
ngModel
name="firstName"
#firstName="ngModel" <-- ADDED
(change)="log(firstName)" <-- ADDED
id="firstName"
type="text"
class="form-control" />
。
因此,我编译了相同的代码,我得到了:
ngModel
因此,无可厚非,我用谷歌搜索了为什么会这样,然后我看到this question on stack并没有答案。我现在在这里,希望有人能告诉我“你可怜的灵魂,你有错字”之类的东西。
注意1 我希望引用我从莫什先生那里买来的讲座,以免违反任何法律。如果是这样,请注意我,我将删除此问题。另外,我真诚地推荐他的课程。 10/10。
注意2 请记住,我偶然发现的问题在我发布此问题时尚未得到回答。我的内容比较详细,所以我不会说它是重复的,但是也很高兴也能回答该问题。
QUSETION (如果现在尚不清楚):Uncaught Error: Template parse errors:
There is no directive with "exportAs" set to "ngModel" ("
ngModel
name="firstName"
[ERROR ->]#firstName="ngModel"
(change)="log(firstName)"
id="firstName"
"): ng:///AppModule/ContactFormComponent.html@6:8
at syntaxError (compiler.js:1021)
at TemplateParser.push../node_modules/@angular/compiler/fesm5/compiler.js.TemplateParser.parse (compiler.js:14830)
at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._parseTemplate (compiler.js:24018)
at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileTemplate (compiler.js:24005)
at compiler.js:23948
at Set.forEach (<anonymous>)
at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileComponents (compiler.js:23948)
at compiler.js:23858
at Object.then (compiler.js:1012)
at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndComponents (compiler.js:23857)
是什么意思,我该如何解决? Angular 4和6之间的关键区别是什么导致A4中的代码在A6中无效?
我是新来的有角的顺便说一句。