Javascript 为什么我从';表格:$invalid';和'的$invalid属性;表格';?

Javascript 为什么我从';表格:$invalid';和'的$invalid属性;表格';?,javascript,angularjs,Javascript,Angularjs,我想根据窗体的状态禁用按钮($invalid),在我将窗体中的所有值设置为null后,我发现如果我写入:console.log(“$scope.assignNewForm.$invalid:”+$scope.assignNewForm.$invalid)它将发出put为false,但如果我写:console.log($scope.assignNewForm)我可以找到表单的$invalid属性,该属性为true。这是同时发生的 把我的代码贴在下面: $scope.questionnaireTit

我想根据窗体的状态禁用按钮($invalid),在我将窗体中的所有值设置为null后,我发现如果我写入:
console.log(“$scope.assignNewForm.$invalid:”+$scope.assignNewForm.$invalid)
它将发出put为false,但如果我写:
console.log($scope.assignNewForm)我可以找到表单的$invalid属性,该属性为true。这是同时发生的

把我的代码贴在下面:

$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
图标上时,该图标显示下面的
值刚刚被计算过。

添加代码这是不可能发生的。。需要查看您的代码。更新的问题。要检查表单中的更改值,请使用$dirty。