찾다

 >  Q&A  >  본문

angular.js - Angularjs+requirejs ngMessages校验问题

问题描述:
我使用requirejs+angularjs+ngMessages参照官方文档写了一个校验的DEMO,但是下图中$error的错误提示正确,但是
<p ng-message="myForm.myName.$error" style="color:maroon">
<p ng-message="required">You did not enter a field</p>
<p ng-message="minlength">Your field is too short</p>
<p ng-message="maxlength">Your field is too long</p>
</p>
中提三行错误提示文字,却一直显示。

可以帮助我看一下是哪里出现问题了吗?

代码:
main.js:

requirejs.config({
    paths: {
       'angular': '//ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular.min',
        'app': 'app',
        'lodash': 'https://cdn.jsdelivr.net/lodash/4.13.1/lodash.min',
        'ngMessages': '//ajax.googleapis.com/ajax/libs/angularjs/1.5.7/angular-messages'
    },  
    shim: {
        'angular': {
          exports: 'angular'
        },
        'ngMessages': ['angular'],
        'app': ['angular']
    }
});
require(['angular','ngMessages',
    'app'
    ], function(angular){
        angular.element(document).ready(function(){
            angular.bootstrap(document, ['myApp']);
        });
 })

index.html

<!DOCTYPE html>
<html>
<head>
</head>
<body>
  <script data-main="main" src="http://requirejs.org/docs/release/2.1.11/minified/require.js"></script>
  <p ng-controller="TooltipDemoCtrl">
    <form name="myForm">
      <label>
        Enter your name:
        <input type="text" name="myName" ng-model="name" ng-minlength="5" ng-maxlength="20" required />
      </label>
      <pre>myForm.myName.$error = {{ myForm.myName.$error | json }}</pre>
      <p ng-message="myForm.myName.$error" style="color:maroon">
        <p ng-message="required">You did not enter a field</p>
        <p ng-message="minlength">Your field is too short</p>
        <p ng-message="maxlength">Your field is too long</p>
      </p> 
    </form>
  </p>
</body>
</html>

app.js

define(['require', 'lodash'], function(require, _) {
  var angular = require('angular');
  angular.module('myApp', []).controller('TooltipDemoCtrl', function($scope) {
  })
});

DEMO代码地址:
http://plnkr.co/edit/AWVXcU8CWQTXFqu6pVtL?p=preview

曾经蜡笔没有小新曾经蜡笔没有小新2745일 전624

모든 응답(1)나는 대답할 것이다

  • 为情所困

    为情所困2017-05-15 17:05:26

    이것을 시도해 보세요: plunker

    으아악

    app.js

    으아악

    메인

    으아악

    회신하다
    0
  • 취소회신하다