使用angular-translate进行角度验证以获取全局验证消息 [英] angular-formly using angular-translate for global validation message
问题描述
可以在此处全局配置验证消息,如 http://docs.angular-formly.com/v5.2.1/docs/formlyvalidationmessages
Validation Message can be configured globally like here http://docs.angular-formly.com/v5.2.1/docs/formlyvalidationmessages
我喜欢使用翻译过滤器,以便以配置的语言翻译书面的验证错误.有人知道该怎么做吗?
I like to use the translation filter, so that written validation errors are translated in the configured language. Does someone know how this can be done?
推荐答案
如果您使用验证程序定义字段,则可以使用:
If your defining a field with a validator, you can use:
validators: {
validUntilDateAfterValidFromDate: {
expression: (viewValue, modelValue) => this.validateValidUntilDate(modelValue),
message: '"some.translate.code" | translate'
}
}
如果您想通过将formlyValidationMessages添加到formly config中来使用更通用的方法,则可以将包装器添加到formlyconfigprovider:
If you want to use the more generic approach by adding formlyValidationMessages to your formly config, you can add a wrapper to your formlyconfigprovider:
formlyConfigProvider.setWrapper({
name: "field-message",
templateUrl: "/app/formly/wrappers/field-message.html"
});
with field-message.html:
with field-message.html:
<formly-transclude></formly-transclude>
<div class="messages" ng-messages="fc.$error" ng-if="fc.$touched">
<div class="alert alert-danger"
ng-message="{{::name}}"
ng-repeat="(name, message) in ::options.validation.messages"
translate>
{{message(fc.$viewValue, fc.$modelValue, this)}}
</div>
</div>
这篇关于使用angular-translate进行角度验证以获取全局验证消息的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!