diff --git a/i18n_tools.config.js b/i18n_tools.config.js new file mode 100644 index 00000000..928ff008 --- /dev/null +++ b/i18n_tools.config.js @@ -0,0 +1,11 @@ + +module.exports = { + entry: ['locales'], // 提取、还原、遗漏扫描入口文件夹,可以配置多个,默认是 src + outDir: 'locales', // i18n 输出文件夹 默认是 src/locales + outShow:2, //输出文件展示结构 1 扁平化结构 2树级结构 默认扁平化 + exclude: ['locales'], // 不提取的文件夹, 默认是 ['src/locales'] + extensions: ['.vue', '.js', '.ts'], // 提取的文件后缀名,默认是 ['.js', '.vue', '.ts'] + filename: 'zh', // 输出的文件名,默认为 zh_cn + extname: 'json', // 输出的文件后缀名默认为 js ,支持json和js(js格式为 module.exports = {} 或 export default {}), + langList: ['en'] // 翻译目标语言列表,默认是 ['en'] 具体语种请自行查看。注意:使用不同的翻译接口,需要更换对应的语言编码,腾讯翻译、火山翻译、谷歌翻译语言编码大致相同,百度要特别注意,与上述3种翻译有不同的语言编码 +} \ No newline at end of file diff --git a/locales/en.json b/locales/en.json new file mode 100644 index 00000000..8a9ed20a --- /dev/null +++ b/locales/en.json @@ -0,0 +1,46 @@ +{ + "cancel": "取消", + "confirm": "确认", + "login": { + "phone_num": "手机号码", + "verify": "验证码", + "get_verify": "获取验证码", + "confirm_binding": "确认绑定", + "return_pre_page": "返回上一页", + "phone_verify": "手机验证码", + "get_phone_login": "获取手机号码一键登录", + "bind_existing_account": "绑定已有账号", + "reg_account_and_bind": "注册账号并绑定", + "login_success_sub_return_pre_page": "已成功登录、请点击返回上一页", + "login_bind_user": "登录帐号将自动绑定{platform_name}用户", + "account_pwd": "账号密码", + "phone": "手机", + "email": "邮箱", + "temp_close_login": "暂时关闭了登录", + "user_name_phone_email": "用户名/手机/邮箱", + "login_pwd": "登录密码", + "e_mail": "电子邮箱", + "login_protocol":[ + "阅读并同意", + "《服务协议》", + "与", + "《隐私权政策》" + ], + "confirm_login": "确认登录", + "new_user_reg": "新用户注册", + "retrieve_pwd": "找回密码", + "use_auth_auto_login": "使用授权自动登录", + "other_login_methods": "其他登陆方式", + "temp_close_reg": "暂时关闭了注册", + "user_name": "用户名", + "confirm_reg": "确认注册", + "now_login": "立即登录", + "now_reg": "立即登录", + "phone_email": "手机/邮箱", + "set_login_pwd": "设置登录密码", + "confirm_submit": "确认提交", + "confirm_login_auth_most_service": "确认登录授权,为您提供更优质的服务", + "base_data_error": "基础数据有误,如未自动加载则请手动点击加载!", + "loading_base_data": "加载基础数据" + } +} diff --git a/locales/index.js b/locales/index.js new file mode 100644 index 00000000..2147fd97 --- /dev/null +++ b/locales/index.js @@ -0,0 +1,6 @@ +import en from './en.json' +import zh from './zh.json' +export default { + en, + zh +} diff --git a/locales/zh.json b/locales/zh.json new file mode 100644 index 00000000..8a9ed20a --- /dev/null +++ b/locales/zh.json @@ -0,0 +1,46 @@ +{ + "cancel": "取消", + "confirm": "确认", + "login": { + "phone_num": "手机号码", + "verify": "验证码", + "get_verify": "获取验证码", + "confirm_binding": "确认绑定", + "return_pre_page": "返回上一页", + "phone_verify": "手机验证码", + "get_phone_login": "获取手机号码一键登录", + "bind_existing_account": "绑定已有账号", + "reg_account_and_bind": "注册账号并绑定", + "login_success_sub_return_pre_page": "已成功登录、请点击返回上一页", + "login_bind_user": "登录帐号将自动绑定{platform_name}用户", + "account_pwd": "账号密码", + "phone": "手机", + "email": "邮箱", + "temp_close_login": "暂时关闭了登录", + "user_name_phone_email": "用户名/手机/邮箱", + "login_pwd": "登录密码", + "e_mail": "电子邮箱", + "login_protocol":[ + "阅读并同意", + "《服务协议》", + "与", + "《隐私权政策》" + ], + "confirm_login": "确认登录", + "new_user_reg": "新用户注册", + "retrieve_pwd": "找回密码", + "use_auth_auto_login": "使用授权自动登录", + "other_login_methods": "其他登陆方式", + "temp_close_reg": "暂时关闭了注册", + "user_name": "用户名", + "confirm_reg": "确认注册", + "now_login": "立即登录", + "now_reg": "立即登录", + "phone_email": "手机/邮箱", + "set_login_pwd": "设置登录密码", + "confirm_submit": "确认提交", + "confirm_login_auth_most_service": "确认登录授权,为您提供更优质的服务", + "base_data_error": "基础数据有误,如未自动加载则请手动点击加载!", + "loading_base_data": "加载基础数据" + } +} diff --git a/main.js b/main.js index 82df5f94..a5c280cd 100644 --- a/main.js +++ b/main.js @@ -5,16 +5,28 @@ import App from './App'; import base from './common/js/common/base'; import share from './common/js/common/share'; +// 多语言引入并初始化 +import messages from './locales/index' +import VueI18n from 'vue-i18n'; +let i18nConfig = { + locale: uni.getLocale() || 'zh', + messages +} +Vue.use(VueI18n) +const i18n = new VueI18n(i18nConfig) + +// 全局icon组件 import iconfont from './components/iconfont/iconfont.vue' +Vue.component("iconfont", iconfont); + Vue.mixin(base); Vue.mixin(share); Vue.config.productionTip = false; -// 注册到全局 -Vue.component("iconfont", iconfont); App.mpType = 'app'; const app = new Vue({ + i18n, ...App }); app.$mount(); \ No newline at end of file diff --git a/pages/error/error.vue b/pages/error/error.vue index a5c6e888..59ff06f5 100644 --- a/pages/error/error.vue +++ b/pages/error/error.vue @@ -5,11 +5,11 @@ {{params.msg}} - 异常错误 + {{$t('error.error.6xw5o2')}} - + diff --git a/pages/login/login.vue b/pages/login/login.vue index 057ca4df..e098f536 100644 --- a/pages/login/login.vue +++ b/pages/login/login.vue @@ -3,9 +3,6 @@ - @@ -17,22 +14,22 @@ - +
{{ user.nickname }} - + - + - + - 返回上一页 + {{ $t('login.return_pre_page') }}
@@ -40,31 +37,31 @@ - + {{ user.nickname }} - - + + - 绑定已有账号 + {{ $t('login.bind_existing_account') }} - 注册账号并绑定 + {{ $t('login.reg_account_and_bind') }} - 已成功登录、请点击返回上一页 - + {{ t('login.login_success_sub_return_pre_page') }} + @@ -84,43 +81,43 @@ {{ plugins_thirdpartylogin_user.nickname }} - 登录帐号将自动绑定{{ plugins_thirdpartylogin_user.platform_name }}用户 - + {{ $t('login.login_bind_user', { platform_name: plugins_thirdpartylogin_user.platform_name }) }} +
- +
- 账号密码 - 手机 - 邮箱 + {{ $t('login.account_pwd') }} + {{ $t('login.phone') }} + {{ $t('login.email') }} - 暂时关闭了登录 + {{ $t('login.temp_close_login') }} - - + + - + - + - + - + - + @@ -133,28 +130,30 @@ - 阅读并同意 《服务协议》《隐私权政策》 + + {{ $t('login.login_protocol.0') }} {{ $t('login.login_protocol.1') }} {{ $t('login.login_protocol.2') }} {{ $t('login.login_protocol.3') }} - + - 新用户注册 + {{ $t('login.new_user_reg') }} - 找回密码 + {{ $t('login.retrieve_pwd') }} - 使用授权自动登录 - 返回上一页 + {{ $t('login.use_auth_auto_login') }} + {{ $t('login.return_pre_page') }} - 其他登陆方式 + {{ $t('login.other_login_methods') }} @@ -173,41 +172,41 @@ - + - 账号密码 - 手机 - 邮箱 + {{ $t('login.account_pwd') }} + {{ $t('login.phone') }} + {{ $t('login.email') }} - 暂时关闭了注册 + {{ $t('login.temp_close_reg') }} - - + + - + - + - + - + - + - + - + @@ -218,21 +217,21 @@ - 阅读并同意 《服务协议》《隐私权政策》 + {{ $t('login.login_protocol.0') }} {{ $t('login.login_protocol.1') }} {{ $t('login.login_protocol.2') }} {{ $t('login.login_protocol.3') }} - + - 立即登录 + {{ $t('login.now_login') }} - 使用授权自动登录 - 返回上一页 + {{ $t('login.use_auth_auto_login') }} + {{ $t('login.return_pre_page') }} @@ -240,31 +239,31 @@ - + - + - + - - + + - 立即登录 + {{ $t('login.now_login') }} - 立即注册 + {{ $t('login.now_reg') }} - 使用授权自动登录 - 返回上一页 + {{ $t('login.use_auth_auto_login') }} + {{ $t('login.return_pre_page') }} @@ -274,7 +273,7 @@ - 确认登录授权,为您提供更优质的服务 + {{ $t('login.confirm_login_auth_most_service') }} @@ -283,20 +282,20 @@ - 阅读并同意 《服务协议》 与 《隐私权政策 + {{ $t('login.login_protocol.0') }} {{ $t('login.login_protocol.1') }} {{ $t('login.login_protocol.2') }} {{ $t('login.login_protocol.3') }} - + - + - + - + @@ -312,11 +311,11 @@ - + - + @@ -329,7 +328,7 @@ - 确认 + {{ $t('confirm') }} @@ -350,15 +349,15 @@ - 取消 + {{ $t('cancel') }} - 基础数据有误,如未自动加载则请手动点击加载! + {{ $t('login.base_data_error') }} - +