wip(i18n): form 国际化

pull/2695/head
sight 2025-05-23 15:59:04 +08:00
parent d726d42322
commit 1803b7089d
2 changed files with 29 additions and 12 deletions

View File

@ -38,6 +38,23 @@
loadMore: '加载更多', loadMore: '加载更多',
noMore: '没有更多了' noMore: '没有更多了'
}, },
form: {
select: {
noData: '暂无数据',
noMatch: '无匹配数据',
placeholder: '请选择'
},
validateMessages: {
required: '必填项不能为空',
phone: '手机号格式不正确',
email: '邮箱格式不正确',
url: '链接格式不正确',
number: '只能填写数字',
date: '日期格式不正确',
identity: '身份证号格式不正确'
},
verifyErrorPromptTitle: '提示',
},
// 未使用的字段为保留字段,将来可能会使用 // 未使用的字段为保留字段,将来可能会使用
laydate: { laydate: {
month: { month: {

View File

@ -31,42 +31,42 @@ layui.define(['lay', 'layer', 'util'], function(exports){
verify: { verify: {
required: function(value) { required: function(value) {
if (!/[\S]+/.test(value) || value === undefined || value === null) { if (!/[\S]+/.test(value) || value === undefined || value === null) {
return layui.$t('必填项不能为空'); return layui.$t('lay.form.validateMessages.required');
} }
}, },
phone: function(value) { phone: function(value) {
var EXP = /^1\d{10}$/; var EXP = /^1\d{10}$/;
if (value && !EXP.test(value)) { if (value && !EXP.test(value)) {
return layui.$t('手机号格式不正确'); return layui.$t('lay.form.validateMessages.phone');
} }
}, },
email: function(value) { email: function(value) {
var EXP = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/; var EXP = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
if (value && !EXP.test(value)) { if (value && !EXP.test(value)) {
return layui.$t('邮箱格式不正确'); return layui.$t('lay.form.validateMessages.email');
} }
}, },
url: function(value) { url: function(value) {
var EXP = /^(#|(http(s?)):\/\/|\/\/)[^\s]+\.[^\s]+$/; var EXP = /^(#|(http(s?)):\/\/|\/\/)[^\s]+\.[^\s]+$/;
if (value && !EXP.test(value)) { if (value && !EXP.test(value)) {
return layui.$t('链接格式不正确'); return layui.$t('lay.form.validateMessages.url');
} }
}, },
number: function(value){ number: function(value){
if (value && isNaN(value)) { if (value && isNaN(value)) {
return layui.$t('只能填写数字'); return layui.$t('lay.form.validateMessages.number');
} }
}, },
date: function(value){ date: function(value){
var EXP = /^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/; var EXP = /^(\d{4})[-\/](\d{1}|0\d{1}|1[0-2])([-\/](\d{1}|0\d{1}|[1-2][0-9]|3[0-1]))*$/;
if (value && !EXP.test(value)) { if (value && !EXP.test(value)) {
return layui.$t('日期格式不正确'); return layui.$t('lay.form.validateMessages.date');
} }
}, },
identity: function(value) { identity: function(value) {
var EXP = /(^\d{15}$)|(^\d{17}(x|X|\d)$)/; var EXP = /(^\d{15}$)|(^\d{17}(x|X|\d)$)/;
if (value && !EXP.test(value)) { if (value && !EXP.test(value)) {
return layui.$t('身份证号格式不正确'); return layui.$t('lay.form.validateMessages.identity');
} }
} }
}, },
@ -466,7 +466,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){
// 下拉选择框 // 下拉选择框
,select: function(elem){ ,select: function(elem){
var TIPS = layui.$t('请选择'); var TIPS = layui.$t('lay.form.select.placeholder');
var CLASS = 'layui-form-select'; var CLASS = 'layui-form-select';
var TITLE = 'layui-select-title'; var TITLE = 'layui-select-title';
var NONE = 'layui-select-none'; var NONE = 'layui-select-none';
@ -765,7 +765,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){
} }
}else{ }else{
if(none){ if(none){
dl.find('.'+NONE)[0] || dl.append('<p class="'+ NONE +layui.$t('">无匹配项</p>')); dl.find('.'+NONE)[0] || dl.append('<p class="'+ NONE + '">' + layui.$t('lay.form.select.noMatch') + '</p>');
} else { } else {
dl.find('.'+NONE).remove(); dl.find('.'+NONE).remove();
} }
@ -956,7 +956,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){
} }
}); });
if (arr.length === 0) { if (arr.length === 0) {
arr.push('<dd lay-value="" class="'+ DISABLED +layui.$t('">None</dd>')); arr.push('<dd lay-value="" class="'+ DISABLED + '">' + layui.$t('lay.form.select.noData') + '</dd>');
} }
return arr.join(''); return arr.join('');
}(); }();
@ -1241,7 +1241,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){
} }
} else { } else {
type ? ( type ? (
items[type] ? items[type]() : hint.error(layui.$t('不支持的 "')+ type + layui.$t('" 表单渲染')) items[type] ? items[type]() : hint.error('[form] "' + type + '" is an unsupported form element type')
) : renderItem(); ) : renderItem();
} }
return that; return that;
@ -1367,7 +1367,7 @@ layui.define(['lay', 'layer', 'util'], function(exports){
return othis; return othis;
}(), {tips: 1}); }(), {tips: 1});
} else if(verType === 'alert') { } else if(verType === 'alert') {
layer.alert(errorText, {title: layui.$t('提示'), shadeClose: true}); layer.alert(errorText, {title: layui.$t('lay.form.verifyErrorPromptTitle'), shadeClose: true});
} }
// 若返回的为字符或数字,则自动弹出默认提示框;否则由 verify 方法中处理提示 // 若返回的为字符或数字,则自动弹出默认提示框;否则由 verify 方法中处理提示
else if(/\b(string|number)\b/.test(typeof errorText)) { else if(/\b(string|number)\b/.test(typeof errorText)) {