zl程序教程

您现在的位置是:首页 >  其它

当前栏目

[AngularJS] ng-messages. 02 reuse and override

and 02 angularjs NG override reuse messages
2023-09-14 09:00:55 时间
<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title></title>
</head>
<body ng-app="app" ng-controller="MainCtrl as vm">
<h1>ng-Message in {{vm.angularVersion}}</h1>
<hr />
<h1>Reused and override</h1>
<form name="myForm2">
    <input type="email" name="myField2" ng-model="field" required minlength="5"/>
    <div ng-messages="myForm2.myField2.$error" ng-messages-include="my-messages">
        <div ng-message="required">This email is required</div>
    </div>
</form>
<script type="text/ng-template" id="my-messages">
    <div ng-message="required">This field is required</div>
    <div ng-message="minlength">The lenght should at least 5</div>
    <div ng-message="email">This should be email</div>
</script>
<script src="bower_components/angular/angular.min.js"></script>
<script src="bower_components/angular-messages/angular-messages.min.js"></script>
<script src="public/app.js"></script>
</body>
</html>

This is very easy to reuse and override the ng-message. All what you need to do this create an ng-template. And then use ng-messages-include to include the template.

 

/**
 * Created by Answer1215 on 10/28/2014.
 */
var app = angular.module('app', ['ngMessages']);

app.controller('MainCtrl', function ($scope) {

    'use strict';

    var vm = this;
    vm.angularVersion = angular.version.full;
})

 

'This email is required' is an override message, it override default message 'This field is required'.

 

Read More about Form:

https://docs.angularjs.org/api/ng/type/form.FormController 

Good example:

https://yearofmoo.github.io/ngMessages/