1
我正在構建一個AngularJS的反饋表單,其中用戶數據存儲在$scope.feedback
中。現在我想包括一個進度條,並需要確定百分比。AngularJS - ReferenceError:「someScopeVar」未定義
// $scope-variable to hold the data.
$scope.feedback = {
title : undefined,
name : undefined,
email : undefined,
tel : undefined
};
// Get the total amount of attributes of $scope.feedback
var totalAmountOfAttributesOfFeedback = 0;
for (var k in $scope.feedback) {
if ($scope.feedback.hasOwnProperty(k)) {
++totalAmountOfAttributesOfFeedback;
}
}
// Get the amount of defined attributes of $scope.feedback
// to determine the percentage of Progress
$scope.determinePercentageOfAttributesDefined = function() {
var amountOfDefinedAttributesOfFeedback = 0;
for (var l in $scope.feedback) {
if (angular.isDefined($scope.feedback[l])) {
++amountOfDefinedAttributesOfFeedback;
}
}
$scope.percentageOfAttributesDefined = (amountOfDefinedAttributesOfFeedback/totalAmountOfAttributesOfFeedback)*100;
console.log(percentageOfAttributesDefined);
};
要計算百分比,我計算的屬性總數爲$scope.feedback
。 要計算已由用戶填充的屬性數量,有功能determinePercentageOfAttributesDefined
,只要觸摸輸入字段就會調用該功能。
的問題是,該變量$scope.percentageOfAttributesDefined
沒有定義,我得到的瀏覽器控制檯以下錯誤:
ReferenceError: percentageOfAttributesDefined is not defined
我也試過在我的控制器創建變量別的地方,但得到了同樣的錯誤。有人知道這個的原因嗎? 其他範圍 - 變量如$scope.feedback
可以毫無問題地被訪問。
感謝您抽出寶貴的時間:)
請問您可以用console.log($ scope.percentageOfAttributesDefined)來檢查;' –
@GirdhariAgrawal這是它的外觀。唯一的問題是日誌沒有工作,因爲我忘記了$ scope。 ...謝謝 –
你能接受我的回答嗎? –