Как в AngularJS сделать такое?

AngularJS только учусь, так что не пинайте.
Есть такой код - jsfiddle.net/tctkopre/1
<script>
	var app = angular.module('foo', [])
	app.controller('userCtrl', function ($scope) {
			$scope.first = 1;
			$scope.two = 2;
			$scope.tree =  $scope.first + $scope.two;
	});
</script>

<div ng-controller="userCtrl">
	<input ng-model="first" type="number" />
	<input ng-model="two" type="number" />
	<h1>{{tree}}</h1>	
</div>


Нужно сложить эти два числа в контроллере. Наверное, строку
$scope.tree = $scope.first + $scope.two;
нужно вынести в отдельный контроллер и как-то передать значение $scope.first и $scope.two, но не знаю как.

UPD 22.04.2016 12.52
Ок. Наверное, я не правильно спрашиваю. А как мне оживить вот такой вот код:
<script>
	var app = angular.module('foo', []);

	app.controller('userCtrl', function ($scope) {
			$scope.sum = $scope.range1 + $scope.range2;
	});
</script>

<div ng-controller="userCtrl">
	<input ng-model="range1" type="range" value="10" />
	<input ng-model="range2" type="range" value="10" />
	<h1>{{sum}}</h1>	
</div>


Решение вида {{range1+range2}} не подходит, так как в последствии нужно делать несколько сравнений полученного результата и пихать их в шаблон, наверное, не правильно.
  • Вопрос задан
  • 374 просмотра
Пригласить эксперта
Ответы на вопрос 2
EreminD
@EreminD
Кое-что умею
<div ng-controller="userCtrl">
	<input ng-model="first" type="number" />
	<input ng-model="two" type="number" />
	<h1>{{ first + two }}</h1>	
</div>
Ответ написан
Комментировать
@lega
Если нужно через контроллер то можно сделать функцию:
$scope.tree =  function() { return $scope.first + $scope.two; }

{{tree()}}

Но в данном случае проще: {{ first + two }}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы