Я изучаю среднюю разработку стека и следую за учебным курсом видео. Все шло хорошо, пока я не пересек эту ошибку, пытаясь совместить два поля пароля. «Password» и «Confirm Password» Я пишу точный код, как учебник пока я получаю следующие ошибки в командной строке (Глоток служит)
ошибка «$ ATTRS» не задаваемая нет- UNDEF
ошибка "$ ATTRS" не задаваемая нет-UNDEF
Здесь нет кода
export function CompareToDirective($parse) {
'ngInject'
return {
require: 'ngModel',
link: function (scope, elm, attrs, ngModel) {
var mainModel = $parse(attrs.compareTo);
var secondModel = $parse(attrs.ngModel);
scope.$watch(attrs.ngModel, function (newValue) {
ngModel.$setValidity($attrs.name, newValue === mainModel(scope));
});
scope.$watch(attrs.compareTo, function (newValue) {
ngModel.$setValidity($attrs.name, newValue === secondModel(scope));
});
}
}
}
EDIT
Вот форма я пытаюсь проверить на всякий случай
<form name="register">
<div class="form-group">
<label>Email address</label>
<input type="email" class="form-control">
</div>
<div class="form-group">
<label>Password</label>
<input type="password" class="form-control" name="pwd" ng-model="pwd">
</div>
<div class="form-group">
<label>Password Confirm</label>
<input type="password" class="form-control" compareTo="pwd" name="pwdConfirm" ng-model="pwdConfirm">
</div>
<span ng-show="register.pwdConfirm.$invalid">Passwords do not match</span>
<button type="submit" class="btn btn-default">Submit</button>
</form>
удалить «$» от $ ATTRS .. просто использовать AttrS –
Вы уверены, что это не просто 'attrs' ... это то, что у вас есть в определении вашей функции. – TripeHound
http://pasteboard.co/AG6q8O6OL.png Вот скриншот кода из учебника. который имеет «$ attrs» Когда я удаляю $ из «attrs» Ошибки идут, но форма не работает –