国际化

This commit is contained in:
John
2024-03-09 00:45:48 +08:00
parent c595061dc8
commit 80dbf50d4b
28 changed files with 745 additions and 291 deletions

View File

@@ -1,7 +0,0 @@
// en_us.js文件
export default {
app: {
hello: 'HelloWorld!'
}
}

140
src/lang/id_ID.ts Normal file
View File

@@ -0,0 +1,140 @@
// id_ID.ts文件
export default {
app: {
home: 'Beranda',
serveList: 'Dompet',
message: 'Customer Service',
my: 'Ku',
yuan: 'Yuan',
second: 'Detik',
month: 'Bulan',
prompt: 'Prompt',
tips: 'Catatan Hangat',
enterLogout: 'Anda Yakin Ingin Keluar Dari Login?',
enterWithdrawal: 'Anda Yakin Ingin Meng withdraw?',
withdrawal: 'Penarikan',
info: 'Informasi',
success: 'Sukses',
withdrawalAmount: 'Jumlah Penarikan',
pleaseWithdrawalAmount: 'Jumlah Penarikan',
submit: 'Kirim',
submittedSuccessfully: 'Berhasil Dikirim',
submitApplication: 'Kirim Permohonan',
bankCardAbnormality: 'Gangguan Kartu Bank',
receivedSuccessfully: 'Berhasil Diterima',
phoneNumber: 'Nomor Telepon',
verificationCode: 'Kode Verifikasi',
confirm: 'Konfirmasi',
enter: 'Silahkan Masukkan',
select: 'Silahkan Pilih',
send: 'Kirim',
login: 'Masuk',
account: 'Akun',
logout: 'Keluar',
register: 'Daftar',
password: 'Kata Sandi',
forgotPassword: 'Lupa Kata Sandi',
passwordPlaceholder: 'Silahkan Tetapkan Kata Sandi 6-16 Digit',
passwordPlaceholder1: 'Silahkan Masukkan Ulang Kata Sandi',
next: 'Lanjut',
update: 'Perbarui',
noData: 'Tidak Ada Data',
none: 'Tidak Ada',
contract: 'Kontrak',
loan: 'Pinjaman',
totalLoan: 'Jumlah Pinjaman',
complete: 'Lengkap',
noComplete: 'Tidak Lengkap',
signature: 'Tanda Tangan',
identityInformation: 'Informasi Identitas',
information: 'Informasi',
signatureInformation: 'Informasi Tanda Tangan',
receivingBank: 'Bank Penerima',
rwmljndzlxx: 'Jangan Lupakan Informasi Anda',
upPNGorJPG: 'Silahkan Unggah Gambar JPG Atau PNG',
},
home: {
productDetails: 'Detail Produk',
minimumDailyInterestRate: 'Suku Bunga Harian Terendah',
borrowingLimit: 'Limit Pinjaman',
installmentPeriod: 'Periode Bayar',
optional: 'Opsional',
applicationAmount: 'Jumlah Permintaan',
loanTerm: 'Tenor Pinjaman',
repaymentPerInstallment: 'Pembayaran Setiap Installment',
dailyInterestRate: 'Suku Bunga Harian',
totalInterest: 'Suku Bunga Total',
successfulBorrowing: 'Pinjaman Berhasil',
enterAgreement: 'Saya Sudah Membaca Dan Setuju',
authAgreement: 'Perjanjian Otorisasi',
serviceAgreement: 'Ketentuan Layanan Platform',
lawAgreement: 'Ketentuan Hukum',
loansAgreement: 'Perjanjian Pinjaman',
immediateBorrowing: 'Pinjaman Segera',
pleaseFillInYourPersonalInformationFirst: 'Silahkan Isi Informasi Pribadi Anda Dulu',
pleaseEnterAgreement: 'Silahkan Baca Dan Setujui Perjanjian Yang Berkaitan',
},
my: {
userInfo: 'Informasi Saya',
loan: 'Pinjaman Saya',
repayment: 'Pembayaran Saya',
legalLiability: 'Kewajiban Hukum',
uploadPassword: 'Ubah Kata Sandi',
logout: 'Logout',
language: 'tukar bahasa',
},
serveList: {
loan: 'Pinjaman Saya',
balance: 'Saldo Akun',
amountToBeRepaid: 'Jumlah Yang Harus Dibayar',
immediateWithdrawal: 'Pinjaman Segera',
financialSecurity: 'Keamanan Dana Dilindungi Oleh Bank',
},
borrowInfo: {
applicationTime: 'Waktu Permohonan',
loanDetails: 'Detail Pinjaman',
loanInfo: 'Informasi Pinjaman',
loanNo: 'Nomor Pinjaman',
loanAmount: 'Jumlah Pinjaman',
loanCycle: 'Sikl Pinjaman',
withdrawalBank: 'Bank Penarikan',
repaymentPerInstallment: 'Pembayaran Setiap Installment',
describe: 'Deskripsi',
receivingAccount: 'Akun Penerima',
usageOfLoan: 'Manfaatkan Pinjaman',
},
loans: {
enterSubmitApplication: 'Anda Yakin Ingin Mengajukan Pinjaman?',
},
userInfo: {
realPrompt: 'Isi informasi yang valid dan asli, persetujuan akan dilanjutkan.',
idCardPrompt: 'Dibutuhkan ID pribadi sendiri dan isinya harus jelas bisa dibaca',
photographPrompt: 'Silahkan pastikan ijin fotografi sudah diaktifkan',
name: 'Nama',
idCard: 'Nomor ID',
idCardUp1: 'Klik Unggah Sisi Wajah ID',
idCardUp2: 'Klik Unggah Sisi Militer ID',
idCardUp3: 'Klik Unggah Foto tangan Ditekan ID',
shootingRequirements: 'Persyaratan Fotografi',
standardShooting: 'Fotografi Standard',
missingBorder: 'Kuas Erat Hilang',
outOfFocus: 'Foto Gragil',
flashStrongly: 'Cahaya Cepat Gemetar Kuat',
unitName: 'Nama Unit',
position: 'Jabatan',
workTelephone: 'Telepon Unit',
workingAge: 'Usia Bekerja',
monthlyPay: 'Gaji Bulanan',
unitAddress: 'Alamat Unit',
addressInfo: 'Informasi Alamat',
currentResidentialAddress: 'Alamat Tinggal Saat Ini',
directFamilyContactPerson: 'Kontak Dari Keluarga Dekat',
relationship: 'Hubungan',
parents: 'Ortu',
spouse: 'Suami/Istri',
children: 'Anak-anak',
grandparents: 'Dari Orang Tua Kandung',
bankOfDeposit: 'Bank Penyedia Rekening',
bankCard: 'Nomor Kartu Bank',
}
}

View File

@@ -1,36 +0,0 @@
import Vue from 'vue'
import VueI18n from 'vue-i18n'
import {Locale} from 'vant'
import enUS from 'vant/lib/locale/lang/en-US'
import zhCN from 'vant/lib/locale/lang/zh-CN'
import enLocale from './en_us'
import zhLocale from './zh_cn'
Vue.use(VueI18n)
const messages = {
en: {
...enUS,
...enLocale
},
zh: {
...zhCN,
...zhLocale
}
}
const i18n = new VueI18n({
locale: 'zh', // 设置默认语言
messages: messages // 设置资源文件对象
})
// 更新vant组件库本身的语言变化支持国际化
function vantLocales (lang) {
if (lang === 'en') {
Locale.use(lang, enUS)
} else if (lang === 'zh') {
Locale.use(lang, zhCN)
}
}
export {i18n, vantLocales}

40
src/lang/index.ts Normal file
View File

@@ -0,0 +1,40 @@
import { createI18n } from 'vue-i18n';
import {Locale} from 'vant'
import zhCN from 'vant/lib/locale/lang/zh-CN'
import idId from 'vant/lib/locale/lang/id-ID'
import zhLocale from './zh_cn'
import idLocale from './id_ID'
import type { App } from 'vue';
const messages = {
zh: {
...zhCN,
...zhLocale
},
id: {
...idId,
...idLocale
}
}
const language = (navigator.language || 'zh').toLocaleLowerCase(); // 这是获取浏览器的语言
console.log('当前的环境语言是:', language)
console.log('当前的后台语言是:', localStorage.getItem('lang'))
const i18n = createI18n({
allowComposition: true,
locale: localStorage.getItem('lang') || language.split('-')[0] || 'zh', // 设置默认语言
fallbackLocale: 'zh', // 设置备用语言
messages: messages // 设置资源文件对象
})
// 更新vant组件库本身的语言变化支持国际化
export function vantLocales (app: App<Element>) {
app.use(i18n)
if (language === 'zh') {
Locale.use(language, zhCN)
} else if (language === 'id') {
Locale.use(language, idId)
}
}

View File

@@ -1,6 +0,0 @@
// zh_cn.js文件
export default {
app: {
hello: '你好,世界!'
}
}

153
src/lang/zh_cn.ts Normal file
View File

@@ -0,0 +1,153 @@
// zh_cn.js文件
export default {
app: {
home: '首页',
serveList: '钱包',
message: '客服',
my: '我的',
yuan: '元',
second: '秒',
month: '个月',
prompt: '提示',
tips: '温馨提示',
enterLogout: '您确定要退出登录吗',
enterWithdrawal: '您确定要提现吗',
withdrawal: '提现',
info: '信息',
success: '成功',
withdrawalAmount: '提现金额',
pleaseWithdrawalAmount: '提现金额',
submit: '提交',
submittedSuccessfully: '提交成功',
submitApplication: '提交申请',
bankCardAbnormality: '银行卡异常',
receivedSuccessfully: '到账成功',
phoneNumber: '手机号码',
verificationCode: '验证码',
confirm: '确认',
enter: '请输入',
select: '请选择',
send: '发送',
login: '登录',
account: '账号',
logout: '登出',
register: '注册',
password: '密码',
forgotPassword: '忘记密码',
passwordPlaceholder: '请设置6-16位密码',
passwordPlaceholder1: '请再次输入密码',
next: '下一步',
update: '修改',
noData: '暂无数据',
none: '暂无',
contract: '合同',
loan: '贷款',
totalLoan: '贷款总额',
complete: '完整',
noComplete: '不完整',
signature: '签名',
identityInformation: '身份信息',
information: '资料信息',
signatureInformation: '签名信息',
receivingBank: '收款银行卡',
rwmljndzlxx: '让我们了解您的资料信息',
upPNGOrJPG: '请上传 jpg 或者 png 格式图片',
},
home: {
productDetails: '产品详情',
minimumDailyInterestRate: '最低日息',
borrowingLimit: '借款额度',
installmentPeriod: '分期期限',
optional: '可选',
applicationAmount: '申请金额',
loanTerm: '借款期限',
repaymentPerInstallment: '每期还款',
dailyInterestRate: '日利率',
totalInterest: '总利息',
successfulBorrowing: '成功借款',
enterAgreement: '我已阅读并同意',
authAgreement: '委托授权协议',
serviceAgreement: '平台服务协议',
lawAgreement: '法律协议',
loansAgreement: '借款协议',
immediateBorrowing: '立即借款',
pleaseFillInYourPersonalInformationFirst: '请先填写个人资料',
pleaseEnterAgreement: '请阅读并同意相关协议',
},
my: {
userInfo: '我的资料',
loan: '我的借款',
repayment: '我的还款',
legalLiability: '法律责任',
uploadPassword: '修改密码',
logout: '退出登录',
language: '切换语言',
},
serveList: {
loan: '我的贷款',
balance: '账户余额',
amountToBeRepaid: '待还款金额',
immediateWithdrawal: '立即借款',
financialSecurity: '账户资金安全由银行保障',
},
borrowInfo: {
applicationTime: '申请时间',
loanDetails: '贷款详情',
loanInfo: '借款信息',
loanNo: '贷款编号',
loanAmount: '借款金额',
loanCycle: '贷款周期',
withdrawalBank: '提现银行',
repaymentPerInstallment: '每期还款',
describe: '描述',
receivingAccount: '收款帐户',
usageOfLoan: '借款用途',
},
loans: {
enterSubmitApplication: '您确定要申请贷款吗'
},
userInfo: {
realPrompt: '填写真实有效的信息,审核才会通过哦',
idCardPrompt: '需本人身份证,且内容清晰可辨',
photographPrompt: '请您确认拍照权限已开启',
name: '姓名',
idCard: '身份证号',
idCardUp1: '点击上传身份证人像面',
idCardUp2: '点击上传身份证国徽面',
idCardUp3: '点击上传手持身份证照',
shootingRequirements: '拍摄要求',
standardShooting: '标准拍摄',
missingBorder: '边框缺失',
outOfFocus: '照片模糊',
flashStrongly: '闪光强烈',
unitName: '单位名称',
position: '职位',
workTelephone: '单位电话',
workingAge: '工作年龄',
monthlyPay: '月薪',
unitAddress: '单位地址',
addressInfo: '详细地址',
currentResidentialAddress: '现居住地址',
directFamilyContactPerson: '直系亲属联系人',
relationship: '关系',
parents: '父母',
spouse: '配偶',
children: '子女',
grandparents: '祖父母',
bankOfDeposit: '开户银行',
bankCard: '银行卡号',
}
}