我想根据表单的状态($invalid(禁用按钮,在我将表单中的所有值设置为 null 后,我发现如果我 whrite: console.log('$scope.assignNewForm.$invalid: ' + $scope.assignNewForm.$invalid);
它会给出 put 作为假,但如果我写: console.log($scope.assignNewForm);
我可以找到表单的 $invalid 属性,这是真的。这同时发生。
在下面发布了我的代码:
$scope.questionnaireTitleSelected = function(questionnaireTitle) {
$scope.assignForm.recipientType = null;
$scope.assignForm.assigneeName = null;
resetErrorState();
$scope.flags.readOnly = false;
$scope.recipientTypes = _.where($scope.questionnaires, {
questionnaireTitle: questionnaireTitle
});
disabledAssignBtn();
};
function disabledAssignBtn() {
if (!$scope.assignNewForm) {
return;
}
console.log($scope.assignNewForm.$invalid);
console.log($scope.assignNewForm);
$scope.flags.disabledAssignBtn = $scope.assignNewForm.$invalid || $scope.assignedError || $scope.flags.noQuestionnaires;
}
结果是:在此处输入图像描述
在控制台上打开对象之前,对象的属性可能$invalid
更改。发生这种情况是因为在折叠对象时会评估对象的属性。
对象旁边的i
图标显示 Value below was evaluated just now
,当您将鼠标悬停在其上时。