JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.3.0-rc.0/angular.min.js"></script>
  <body ng-app="app">
    <h2>Angular 1.3.0-rc (fixed)</h3>
    Enter a number between 1 and 10:<br />
    <form name="form">
      <input type="text" 
        name="number" 
        ng-model="number"
        number 
        min-number="1" 
        max-number="2" />
      <br />
      $error={{form.number.$error|json}}
    </form>
  </body>

JavaScript

angular.module('app', [])
    .directive('number', function () {
        return {
            require: 'ngModel',
            link: function (scope, elem, attrs, ctrl) {

                // valid number
                ctrl.$parsers.push(function (value) {
                    if(value === '') return value;
                    return isFinite(value) ? Number(value) : undefined;
                });

                ctrl.$validators.minNumber = function (value) {
                    return !value || !angular.isDefined(attrs.minNumber) || (value >= Number(attrs.minNumber));
                };

                ctrl.$validators.maxNumber = function (value) {
                    return !value || !angular.isDefined(attrs.maxNumber) || (value <= Number(attrs.maxNumber));
                };
            }
        };
    });