Penerangan masalah:
Saya menggunakan requirejs angularjs ngMessages untuk menulis DEMO pengesahan dengan merujuk kepada dokumentasi rasmi, tetapi mesej ralat $error dalam gambar di bawah adalah betul, tetapi
<p ng- message=" myForm.myName.$error" style="color:maroon">
<p ng-message="required">Anda tidak memasukkan medan</p>
<p ng-message="minlength">Medan anda terlalu pendek</p>
<p ng -message="maxlength">Medan anda juga Tiga baris teks ralat dalam panjang</p>
</p>
sentiasa dipaparkan.
Bolehkah anda membantu saya mengetahui di mana masalahnya?
Kod:
utama.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) {
})
});
Alamat kod DEMO:
http://plnkr.co/edit/AWVXcU8CWQTXFqu6pVtL?p=preview
Cuba ini: plunker
app.js
utama