我有一个输入标签如下:
<input type="checkbox" ng-change="swap($parent.$index,$index)" ng-model="checked">
此标记位于嵌套ng-repeat
中。当我删除ng-model
时,我收到了此错误:
错误:[$ compile:ctreq] http://errors.angularjs.org/1.6.4/ $ compile / ctreq?p0 = ngModel&amp; p1 = ngChange
ng-change
指令是否需要ng-model
指令?
答案 0 :(得分:4)
这里肯定你需要ng-model,因为ng-change需要检测模型上的变化,
<input type="checkbox" ng-change="swap($parent.$index,$index)" ng-model="checked">
来自文档
只有在输入发生变化时才会评估ngChange表达式 value会导致新值...注意,此指令需要 ngModel将出现。
<强> ng-change Directive
强>