2014-05-21 61 views
0

我想收集使用angularJS的值,並與他們做一些數學。我已經嘗試了以下,但沒有工作,我在angularJS非常新,我有一個jsFiddle(我不知道如何獲得angularJS JSFiddle工作)有角度的JS數學與值

有誰知道我在做什麼錯?

這裏是我的代碼:

<body ng-app="myApp" ng-controller="WizardController"> 
<wizard on-before-step-change="log(event)" on-step-changing="log(event)" on-after-step-change="log(event)"> 

    <step title="stepOne"> 
     <input type="text" ng-model="user.a" /> 
     <input type="text" ng-model="user.b" /> 
     <input type="text" ng-model="user.c" /> 
     {{totalNumber}} 
    </step> 

</wizard>  
</body> 



var myApp = angular.module('myApp', []); 

myApp.controller('WizardController', ['$scope', function($scope){ 

    $scope.user = { }; 
    $scope.totalNumber = $scope.user.a * $scope.user.b * 50 + $scope.user.c - $scope.user.a; 

}]); 

,如果我做$ scope.totalNumber = $ scope.user,然後{{} TOTALNUMBER}我得到這個返回:{ 「一」: 「1」} (如果我有<input type="text" ng-model="user.a">),但是當我做$ scope.user.a時沒有任何顯示,這是非常令人沮喪的

+0

下面的答案可能是,但作爲進一步的提示,您可以使用類型= 「數字」,而不是類型=「text」使這些字段成爲數字。 – Swanny

回答

1

如果您是新來Angular,從this Fiddle開始。它非常簡單地顯示瞭如何加載Angular(檢查左邊欄)以及如何使用範圍內的數字。

HTML

<div ng-app="myApp" ng-controller="AppCtrl"> 
    <input type="text" ng-model="num1" /> 
    <input type="text" ng-model="num2" /> 
    {{ total() }} 
</div> 

JS

var app = angular.module('myApp', []); 

app.controller('AppCtrl', function ($scope) { 
    $scope.num1 = 10; 
    $scope.num2 = 23; 

    $scope.total = function() { 
     return $scope.num1 * $scope.num2; 
    } 
}); 
+0

that did not work要麼......更新我的問題 – user3618922

+0

它沒有任何意義爲什麼$ scope.totalNumber = $ scope.user工作,但不是$ scope.user.a – user3618922

+0

'$ scope.totalNumber'是一個原始值,所以它可以立即綁定到範圍。 '$ scope.user = {}'是一個對象。 '$ scope.user'可以綁定到作用域,但是當作用域被創建時'$ scope.user.a'不存在,所以沒有綁定的引用。這就是說,使用* objects * [Angular建議](https://github.com/angular/angular.js/wiki/Understanding-Scopes),但你仍然需要了解如何使用它們。 – Terry

2

JavaScript通常區分大小寫。您可能想要在您的HTML:

{{ totalNumber }} 
+0

OP:這是正確的,您需要匹配您的示波器的情況。然而,您的小提琴過於複雜,並且存在一些問題,無論您是否正確包含Angular並更新此綁定,都會使其無法正常工作。 – Terry

1

1方式:
卸下:{{totalNumber}}
穿戴:{{user.a * user.b * 50 + user.c - user.a}}

2方式等Terry說:
腳本:
$scope.totalNumber = function(){
return $scope.user.a * $scope.user.b * 50 + $scope.user.c - $scope.user.a;
}
HTML:
{{totalNumber()}}