<li ng-repeat="user in users" ng-controller="UserItemController"> {{user.name|uppercase}} {{user.score}} <button ng-click="increment()">+1</button> </li>
angular.module('myapp', []) .controller('MainController', ['$scope', function($scope) { $scope.users = [ {"name":"taguchi", "score":52.22}, {"name":"tanaka", "score":38.22}, {"name":"yamada", "score":11.11}, {"name":"goto", "score":22.22}, {"name":"kurumi", "score":58.22}, {"name":"sakamoto", "score":81.11}, ]; $scope.today = new Date(); }]) .controller('UserItemController', ['$scope', function($scope){ $scope.increment = function(){ $scope.user.score++; }; }]);
やっぱGoogleはリアルタイム処理とか高速処理がめちゃくちゃ強いな。会社作った時からそーなんだろうけど、何でだろう。。
<div ng-controller="MainController"> <form name="myName" ng-submit="addUser()"> <p>Name:<input type="text" name="name" ng-model="user.name"></p> <p><input type="submit" value="add"></p> <pre>{{user|json}}</pre> </form> </div>
フォームのバリデーションはhtml5やサーバーサイド側でもできるけど、DBに入力しない問い合わせフォームのバリデーションはangularでもいいかもね。
<form novalidate name="myForm" ng-submit="addUser()"> <p>Name:<input type="text" name="name" ng-model="user.name" required ng-minlength="5" ng-maxlength="8"> <span ng-show="myForm.name.$error.required">Required!</span> <span ng-show="myForm.name.$error.minlength">too short!</span> <span ng-show="myForm.name.$error.maxlength">too long!</span></p> <p><input type="submit" value="add"></p> <pre>{{user|json}}</pre> </form>
emailは正規表現のルールはデフォルトがあるのか、これは自分で決めたいよね。
<form novalidate name="myForm" ng-submit="addUser()"> <p>score:<input type="number" name="score" ng-model="user.score"> </p> <p>email:<input type="email" name="email" ng-model="user.email"> <span ng-show="myForm.email.$error.email">Not valide email</span></p> <p><input type="submit" value="add"></p> <p>web:<input type="url" name="url" ng-model="user.url"> <span ng-show="myForm.url.$error.url">Not valide url</span></p> <pre>{{user|json}}</pre> </form>