fix: 国际化静态翻译

This commit is contained in:
2023-11-20 20:05:09 +08:00
parent ac856ed2f6
commit 13914f12f0
12 changed files with 196 additions and 54 deletions

View File

@@ -17,7 +17,7 @@
<!-- 顶部菜单超出数量折叠 -->
<el-submenu v-if="topMenus.length > visibleNumber" :style="{'--theme': theme}" index="more">
<template slot="title">更多菜单</template>
<template slot="title">{{ $t('common.moreMenu') }}</template>
<template v-for="(item, index) in topMenus">
<el-menu-item
v-if="index >= visibleNumber"

View File

@@ -2,9 +2,9 @@
<div>
<input ref="excel-upload-input" class="excel-upload-input" type="file" accept=".xlsx, .xls" @change="handleClick">
<div class="drop" @drop="handleDrop" @dragover="handleDragover" @dragenter="handleDragover">
拖拽excel文件到此处 或者
{{ $t('common.Tip7') }}
<el-button :loading="loading" style="margin-left:16px;" size="mini" type="primary" @click="handleUpload">
浏览
{{ $t('common.browses') }}
</el-button>
</div>
</div>

View File

@@ -2,8 +2,8 @@ import enLocale from 'element-ui/lib/locale/lang/en'
export default {
'lang': 'English',
'common': {
'Personal_center': 'Personal Center',
'Layout_setting': 'Layout Setting',
'Personal_center': 'Personal Center',
'Log_out': 'Log Out',
'Personal_information': 'Personal Information',
'username': 'UserName',
@@ -11,10 +11,23 @@ export default {
'phone': 'Phone Number',
'phone2': 'Phone',
'sex': 'Sex',
'sex_male': 'Male',
'sex_female': 'Female',
'email': 'E-mail',
'Security_settings': 'Security Settings',
'Save_settings': 'Save Settings',
'Reset_settings': 'Reset Settings',
'Change_password': 'Change Password',
'New_password': 'New Password',
'Old_password': 'Old Password',
'Verify_password': 'Verify Password',
'User_information': 'User Information',
'Operation_log': 'Operation Log',
'action': 'Action',
'IP_source': 'IP Source',
'Browser': 'Browser',
'Request_time': 'Request Time',
'Creation_date': 'Creation Date',
'account': 'Account',
'password': 'Password',
'verification_code': 'Code',
@@ -32,11 +45,38 @@ export default {
'Confirm': 'Confirm',
'Cancel': 'Cancel',
'Operate': 'Operate',
'Refresh': 'Refresh',
'Closes': 'Close',
'Closes_l': 'Close Left',
'Closes_r': 'Close Right',
'Closes_o': 'Close Other',
'Closes_a': 'Close All',
'Theme_style_setting': 'Theme Style Setting',
'Theme_color': 'Theme Color',
'System_layout_configuration': 'System Layout Configuration',
'Open': 'Open',
'Fixation': 'Fixation',
'Display': 'Display',
'Dynamic_titles': 'Dynamic Titles',
'crudTip': 'Are you sure to delete this data?',
'startDate': 'StartDate',
'endDate': 'EndDate',
'moreMenu': 'MoreMenu',
'browses': 'browse',
'fz': 'Full screen zoom',
'Tips': 'Tips',
'Tip1': 'Confirm deletion of selected',
'Tip2': 'Data?',
'Tip3': 'User name not used as login',
'Tip4': 'Mobile phone number cannot be duplicate',
'Tip5': 'Please enter a phone number',
'Tip6': 'Please enter the correct 11 digit phone number',
'Tip7': 'Drag and drop the excel file here or',
'Tip8': 'The two passwords are different',
'Tip9': 'Please enter your password again',
'Tip10': 'Please enter your old password',
'Tip11': 'Please enter your new password',
'Tip12': '6 to 20 characters in length',
'loading': 'loading...'
},
// 菜单

View File

@@ -2,20 +2,33 @@ import idLocale from 'element-ui/lib/locale/lang/id'
export default {
'lang': 'in',
'common': {
'Personal_center': 'Pusat Pribadi',
'Layout_setting': 'Pengaturan Bentangan',
'Personal_center': 'Pusat Pribadi',
'Log_out': 'Log Out',
'Personal_information': 'Informasi Pribadi',
'account': 'Akaun',
'username': 'Nama Pengguna',
'name': 'Nama',
'phone': 'Nomor Ponsel',
'phone2': 'Ponsel',
'sex': 'Gender',
'Security_settings': 'Pengaturan Keamanan',
'Change_password': 'Ubah kata sandi',
'User_information': 'Informasi Pengguna',
'sex_male': 'laki-laki',
'sex_female': 'wanita',
'email': 'E-mail',
'Security_settings': 'Pengaturan Keamanan',
'Save_settings': 'Simpan Pengaturan',
'Reset_settings': 'Reset pengaturan',
'Change_password': 'Ubah kata sandi',
'New_password': 'Kata sandi baru',
'Old_password': 'Kata sandi lama',
'Verify_password': 'Konfirmasi Sandi',
'User_information': 'Informasi Pengguna',
'Operation_log': 'Log Operasi',
'action': 'Perilaku',
'Browser': 'Pelayar',
'IP_source': 'IP Sumber',
'Request_time': 'Meminta Konsumsi Waktu',
'Creation_date': 'Dicipta Pada',
'account': 'Akaun',
'password': 'Sandi',
'verification_code': 'Kode',
'login_rm': 'Ingat aku',
@@ -32,11 +45,38 @@ export default {
'Confirm': 'konfirmasi',
'Cancel': 'Batalkan',
'Operate': 'operasi',
'Refresh': 'Segar',
'Closes': 'Tutup',
'Closes_l': 'Tutup Sisi Kiri',
'Closes_r': 'Tutup Sisi Kanan',
'Closes_o': 'Tutup Lain',
'Closes_a': 'Tutup Semua',
'Theme_style_setting': 'Pengaturan Gaya Tema',
'Theme_color': 'Warna Tema',
'System_layout_configuration': 'Konfigurasi layout sistem',
'Open': 'Buka',
'Fixation': 'Tetap',
'Display': 'Tampilan',
'Dynamic_titles': 'Tajuk Dinamik',
'crudTip': 'Apakah Anda yakin untuk menghapus data ini?',
'startDate': 'TarikhAwal',
'endDate': 'TarikhAkhir',
'moreMenu': 'LebihBanyakMenu',
'browses': 'melayar',
'fz': 'Zum layar penuh',
'Tips': 'Prompt',
'Tip1': 'Konfirmasi Penghapusan Yang Dipilih',
'Tip2': 'Data?',
'Tip3': 'Nama pengguna tidak digunakan sebagai daftar masuk',
'Tip4': 'Nomor telepon ponsel tidak dapat duplikasi',
'Tip5': 'Silakan masukkan nomor telepon',
'Tip6': 'Silakan masukkan nomor telepon 11 digit yang benar',
'Tip7': 'Seret dan jatuhkan berkas Excel di sini atau',
'Tip8': 'Kata sandi yang dimasukkan dua kali tidak cocok',
'Tip9': 'Silakan masukkan sandi lagi',
'Tip10': 'Silakan masukkan kata sandi lama Anda',
'Tip11': 'Silakan masukkan sandi baru',
'Tip12': 'Antara 6 dan 20 karakter dalam panjang',
'loading': 'Memuatkan Data...'
},
// 菜单

View File

@@ -11,10 +11,23 @@ export default {
'phone': '手机号码',
'phone2': '手机号',
'sex': '性别',
'sex_male': '男',
'sex_female': '女',
'email': '用户邮箱',
'Security_settings': '安全设置',
'Save_settings': '保存配置',
'Reset_settings': '重置配置',
'Change_password': '修改密码',
'New_password': '新密码',
'Old_password': '旧密码',
'Verify_password': '确认密码',
'User_information': '用户资料',
'Operation_log': '操作日志',
'action': '行为',
'IP_source': 'IP来源',
'Browser': '浏览器',
'Request_time': '请求耗时',
'Creation_date': '创建日期',
'account': '账号',
'password': '密码',
'verification_code': '验证码',
@@ -32,11 +45,38 @@ export default {
'Confirm': '确认',
'Cancel': '取消',
'Operate': '操作',
'Refresh': '刷新',
'Closes': '关闭',
'Closes_l': '关闭左侧',
'Closes_r': '关闭右侧',
'Closes_o': '关闭其他',
'Closes_a': '关闭全部',
'Theme_style_setting': '主题风格设置',
'Theme_color': '主题颜色',
'System_layout_configuration': '系统布局配置',
'Open': '开启',
'Fixation': '固定',
'Display': '显示',
'Dynamic_titles': '动态标题',
'crudTip': '确定删除本条数据吗?',
'startDate': '开始日期',
'endDate': '结束日期',
'moreMenu': '更多菜单',
'browses': '浏览',
'fz': '全屏缩放',
'Tips': '提示',
'Tip1': '确认删除选中的',
'Tip2': '条数据?',
'Tip3': '用户姓名不作为登录使用',
'Tip4': '手机号码不能重复',
'Tip5': '请输入电话号码',
'Tip6': '请输入正确的11位手机号码',
'Tip7': '拖拽excel文件到此处 或者',
'Tip8': '两次输入的密码不一致',
'Tip9': '请再次输入密码',
'Tip10': '请输入旧密码',
'Tip11': '请输入新密码',
'Tip12': '长度在 6 到 20 个字符',
'loading': '数据加载中...'
},
// 菜单

View File

@@ -12,7 +12,7 @@
<Doc class="right-menu-item hover-effect" />
</el-tooltip>-->
<el-tooltip content="全屏缩放" effect="dark" placement="bottom">
<el-tooltip :content="$t('common.fz')" effect="dark" placement="bottom">
<screenfull id="screenfull" class="right-menu-item hover-effect" />
</el-tooltip>
<notice-icon class="right-menu-item" />

View File

@@ -3,7 +3,7 @@
<div>
<div class="setting-drawer-content">
<div class="setting-drawer-title">
<h3 class="drawer-title">主题风格设置</h3>
<h3 class="drawer-title">{{ $t('common.Theme_style_setting') }}</h3>
</div>
<div class="setting-drawer-block-checbox">
<div class="setting-drawer-block-checbox-item" @click="handleTheme('theme-dark')">
@@ -51,44 +51,44 @@
</div>
<div class="drawer-item">
<span>主题颜色</span>
<span>{{ $t('common.Theme_color') }}</span>
<theme-picker style="float: right;height: 26px;margin: -3px 8px 0 0;" @change="themeChange" />
</div>
</div>
<el-divider />
<h3 class="drawer-title">系统布局配置</h3>
<h3 class="drawer-title">{{ $t('common.System_layout_configuration') }}</h3>
<div class="drawer-item">
<span>开启 TopNav</span>
<span>{{ $t('common.Open') }} TopNav</span>
<el-switch v-model="topNav" class="drawer-switch" />
</div>
<div class="drawer-item">
<span>开启 Tags-Views</span>
<span>{{ $t('common.Open') }} Tags-Views</span>
<el-switch v-model="tagsView" class="drawer-switch" />
</div>
<div class="drawer-item">
<span>固定 Header</span>
<span>{{ $t('common.Fixation') }} Header</span>
<el-switch v-model="fixedHeader" class="drawer-switch" />
</div>
<div class="drawer-item">
<span>显示 Logo</span>
<span>{{ $t('common.Display') }} Logo</span>
<el-switch v-model="sidebarLogo" class="drawer-switch" />
</div>
<div class="drawer-item">
<span>动态标题</span>
<span>{{ $t('common.Dynamic_titles') }}</span>
<el-switch v-model="dynamicTitle" class="drawer-switch" />
</div>
<el-divider />
<el-button size="mini" type="primary" plain icon="el-icon-document-add" @click="saveSetting">保存配置</el-button>
<el-button size="mini" plain icon="el-icon-refresh" @click="resetSetting">重置配置</el-button>
<el-button size="mini" type="primary" plain icon="el-icon-document-add" @click="saveSetting">{{ $t('common.Save_settings') }}</el-button>
<el-button size="mini" plain icon="el-icon-refresh" @click="resetSetting">{{ $t('common.Reset_settings') }}</el-button>
</div>
</div>
</template>

View File

@@ -17,12 +17,12 @@
</router-link>
</scroll-pane>
<ul v-show="visible" :style="{left:left+'px',top:top+'px'}" class="contextmenu">
<li @click="refreshSelectedTag(selectedTag)">刷新</li>
<li v-if="!(selectedTag.meta&&selectedTag.meta.affix)" @click="closeSelectedTag(selectedTag)">关闭</li>
<li v-if="!isFirstView()" @click="closeLeftTags()">关闭左侧</li>
<li v-if="!isLastView()" @click="closeRightTags">关闭右侧</li>
<li @click="closeOthersTags">关闭其他</li>
<li @click="closeAllTags(selectedTag)">关闭全部</li>
<li @click="refreshSelectedTag(selectedTag)">{{ $t('common.Refresh') }}</li>
<li v-if="!(selectedTag.meta&&selectedTag.meta.affix)" @click="closeSelectedTag(selectedTag)">{{ $t('common.Closes') }}</li>
<li v-if="!isFirstView()" @click="closeLeftTags()">{{ $t('common.Closes_l') }}</li>
<li v-if="!isLastView()" @click="closeRightTags">{{ $t('common.Closes_r') }}</li>
<li @click="closeOthersTags">{{ $t('common.Closes_o') }}</li>
<li @click="closeAllTags(selectedTag)">{{ $t('common.Closes_a') }}</li>
</ul>
</div>
</template>

View File

@@ -51,23 +51,23 @@
</el-form-item>
<el-form-item :label="$t('common.sex')">
<el-radio-group v-model="form.gender" style="width: 178px">
<el-radio label="男"></el-radio>
<el-radio label="女"></el-radio>
<el-radio :label="$t('common.sex_male')">{{ $t('common.sex_male') }}</el-radio>
<el-radio :label="$t('common.sex_female')">{{ $t('common.sex_female') }}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="">
<el-button :loading="saveLoading" size="mini" type="primary" @click="doSubmit">保存配置</el-button>
<el-button :loading="saveLoading" size="mini" type="primary" @click="doSubmit">{{ $t('common.Save_settings') }}</el-button>
</el-form-item>
</el-form>
</el-tab-pane>
<!-- 操作日志 -->
<el-tab-pane label="操作日志" name="second">
<el-tab-pane :label="$t('common.Operation_log')" name="second">
<el-table v-loading="loading" :data="data" style="width: 100%;">
<el-table-column prop="description" label="行为" min-width="130" show-overflow-tooltip />
<el-table-column prop="description" :label="$t('common.action')" min-width="130" show-overflow-tooltip />
<el-table-column prop="request_ip" label="IP" />
<el-table-column show-overflow-tooltip prop="address" label="IP来源" />
<el-table-column prop="browser" label="浏览器" min-width="120" show-overflow-tooltip />
<el-table-column prop="time" label="请求耗时" align="center">
<el-table-column show-overflow-tooltip prop="address" :label="$t('common.IP_source')" />
<el-table-column prop="browser" :label="$t('common.Browser')" min-width="120" show-overflow-tooltip />
<el-table-column prop="time" :label="$t('common.Request_time')" align="center">
<template slot-scope="scope">
<el-tag v-if="scope.row.time <= 300">{{ scope.row.time }}ms</el-tag>
<el-tag v-else-if="scope.row.time <= 1000" type="warning">{{ scope.row.time }}ms</el-tag>
@@ -80,7 +80,8 @@
show-overflow-tooltip
>
<template slot="header">
<div style="display:inline-block;float: right;cursor: pointer" @click="init">创建日期<i class="el-icon-refresh" style="margin-left: 40px" /></div>
<div style="display:inline-block;float: right;cursor: pointer" @click="init">
{{ $t('common.Creation_date') }} <i class="el-icon-refresh" style="margin-left: 40px" /></div>
</template>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.create_time) }}</span>
@@ -126,9 +127,9 @@ export default {
// 自定义验证
const validPhone = (rule, value, callback) => {
if (!value) {
callback(new Error('请输入电话号码'))
callback(new Error(this.$t('common.Tip5')))
} else if (!isvalidPhone(value)) {
callback(new Error('请输入正确的11位手机号码'))
callback(new Error(this.$t('common.Tip6')))
} else {
callback()
}

View File

@@ -1,20 +1,20 @@
<template>
<div style="display: inline-block">
<el-dialog :visible.sync="dialog" :close-on-click-modal="false" :before-close="cancel" :title="title" append-to-body width="500px" @close="cancel">
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="88px">
<el-form-item label="旧密码" prop="oldPass">
<el-input v-model="form.oldPass" type="password" auto-complete="on" style="width: 370px;" />
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="30%">
<el-form-item :label="$t('common.Old_password')" prop="oldPass">
<el-input v-model="form.oldPass" type="password" auto-complete="on" style="width: 70%;" />
</el-form-item>
<el-form-item label="新密码" prop="newPass">
<el-input v-model="form.newPass" type="password" auto-complete="on" style="width: 370px;" />
<el-form-item :label="$t('common.New_password')" prop="newPass">
<el-input v-model="form.newPass" type="password" auto-complete="on" style="width: 70%;" />
</el-form-item>
<el-form-item label="确认密码" prop="confirmPass">
<el-input v-model="form.confirmPass" type="password" auto-complete="on" style="width: 370px;" />
<el-form-item :label="$t('common.Verify_password')" prop="confirmPass">
<el-input v-model="form.confirmPass" type="password" auto-complete="on" style="width: 70%;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="cancel">取消</el-button>
<el-button :loading="loading" type="primary" @click="doSubmit">确认</el-button>
<el-button type="text" @click="cancel">{{ $t('common.Cancel') }}</el-button>
<el-button :loading="loading" type="primary" @click="doSubmit">{{ $t('common.Confirm') }}</el-button>
</div>
</el-dialog>
</div>
@@ -23,28 +23,29 @@
<script>
import store from '@/store'
import { updatePass } from '@/views/system/user/user'
import i18n from '@/i18n'
export default {
data() {
const confirmPass = (rule, value, callback) => {
if (value) {
if (this.form.newPass !== value) {
callback(new Error('两次输入的密码不一致'))
callback(new Error(this.$t('common.Tip8')))
} else {
callback()
}
} else {
callback(new Error('请再次输入密码'))
callback(new Error(i18n.t('common.Tip9')))
}
}
return {
loading: false, dialog: false, title: '修改密码', form: { oldPass: '', newPass: '', confirmPass: '' },
loading: false, dialog: false, title: i18n.t('common.Change_password'), form: { oldPass: '', newPass: '', confirmPass: '' },
rules: {
oldPass: [
{ required: true, message: '请输入旧密码', trigger: 'blur' }
{ required: true, message: i18n.t('common.Tip10'), trigger: 'blur' }
],
newPass: [
{ required: true, message: '请输入新密码', trigger: 'blur' },
{ min: 6, max: 20, message: '长度在 6 到 20 个字符', trigger: 'blur' }
{ required: true, message: i18n.t('common.Tip11'), trigger: 'blur' },
{ min: 6, max: 20, message: i18n.t('common.Tip12'), trigger: 'blur' }
],
confirmPass: [
{ required: true, validator: confirmPass, trigger: 'blur' }