From 701263e0dd52b4459d9338a69053b9f7125c8219 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E4=BA=8E=E8=82=96=E7=A3=8A?= <18851179580@163.com>
Date: Thu, 17 Apr 2025 11:14:25 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=A4=9A=E8=AF=AD=E8=A8=80?=
=?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
App.vue | 16 +++--
common/css/page.css | 3 +
locale/en.json | 3 +-
locale/zh.json | 3 +-
pages/diy/components/diy/diy.vue | 34 ++++++++--
pages/diy/components/diy/float-window.vue | 7 +-
pages/login/login.vue | 69 +++-----------------
pages/setup/setup.vue | 79 ++++-------------------
8 files changed, 71 insertions(+), 143 deletions(-)
diff --git a/App.vue b/App.vue
index 5349dbde..f430ff1d 100644
--- a/App.vue
+++ b/App.vue
@@ -239,6 +239,7 @@
// 其他数据
// 公共数是否已初始化成功
common_data_loading_status: 0,
+ common_data_init_config_back_list: [],
common_data_init_status: 0,
common_data_init_back_timer: null,
// 网络状态检查
@@ -1498,6 +1499,9 @@
*/
init_config(num = 0, object, method, params) {
var self = this;
+ if (num == 0) {
+ self.data.common_data_init_config_back_list.push({ object: object, method: method, params: params})
+ }
uni.getNetworkType({
success: function (res) {
if (res.networkType != 'none') {
@@ -1507,7 +1511,6 @@
// 公共配置初始化返回处理
self.init_config_result_handle(config, self);
}
-
// 读取远程配置
if(self.data.common_data_loading_status == 0) {
// 赋值在加载状态
@@ -1529,10 +1532,14 @@
// 公共配置初始化返回处理
self.init_config_result_handle(data, self);
-
// 回调
- if (typeof object === 'object' && (method || null) != null) {
- object[method](params);
+ if (self.data.common_data_init_config_back_list.length > 0) {
+ self.data.common_data_init_config_back_list.forEach(item => {
+ if (typeof item.object === 'object' && (item.method || null) != null) {
+ item.object[item.method](item.params);
+ }
+ })
+ self.data.common_data_init_config_back_list = [];
}
} else {
self.showToast(res.data.msg);
@@ -1540,7 +1547,6 @@
if (res.data.code == -10000) {
self.data.common_data_init_status = 1;
}
-
// 首次则再次初始化配置、站点关闭状态则不处理
if (parseInt(num || 0) <= 20 && self.data.common_data_init_status == 0) {
self.init_config(num+1, object, method, params);
diff --git a/common/css/page.css b/common/css/page.css
index 8867a3f9..23a8fdbb 100644
--- a/common/css/page.css
+++ b/common/css/page.css
@@ -250,6 +250,9 @@ button:before {
.z-i-deep {
z-index: 2 !important;
}
+.z-i-deep-middle {
+ z-index: 100 !important;
+}
.z-i-deep-must {
z-index: 999 !important;
}
diff --git a/locale/en.json b/locale/en.json
index 06d54003..27e9ab1b 100644
--- a/locale/en.json
+++ b/locale/en.json
@@ -80,7 +80,8 @@
"verification_mobile_message": "Please enter the verification code or mobile number",
"unique_message": "The unique identifier is empty",
"not_supported_scan_tips": "H5 webpage does not support scanning codes",
- "copy_link": "Copy link"
+ "copy_link": "Copy link",
+ "multilingual": "multilingual"
},
"client": {
"weixin": "WeChat",
diff --git a/locale/zh.json b/locale/zh.json
index 71f5abe6..55cd13bb 100644
--- a/locale/zh.json
+++ b/locale/zh.json
@@ -80,7 +80,8 @@
"verification_mobile_message": "请输入核销码或手机",
"unique_message": "唯一标识为空",
"not_supported_scan_tips": "H5网页不支持扫码",
- "copy_link": "复制链接"
+ "copy_link": "复制链接",
+ "multilingual": "多语言"
},
"client": {
"weixin": "微信",
diff --git a/pages/diy/components/diy/diy.vue b/pages/diy/components/diy/diy.vue
index 0b3ae22a..e232a425 100644
--- a/pages/diy/components/diy/diy.vue
+++ b/pages/diy/components/diy/diy.vue
@@ -47,7 +47,7 @@
-
+
@@ -77,7 +77,7 @@
-
+
@@ -87,6 +87,10 @@
+
+
+
+
@@ -95,7 +99,6 @@
-
@@ -146,7 +149,8 @@
import componentBottomLine from '@/components/bottom-line/bottom-line';
import componentGoodsBuy from '@/components/goods-buy/goods-buy';
import componentSearch from '@/components/search/search';
-
+ import componentQuickNav from '@/components/quick-nav/quick-nav';
+ import componentLangSwitch from '@/components/lang-switch/lang-switch';
var system = app.globalData.get_system_info(null, null, true);
var sys_width = app.globalData.window_width_handle(system.windowWidth);
@@ -212,6 +216,8 @@
componentBottomLine,
componentGoodsBuy,
componentSearch,
+ componentLangSwitch,
+ componentQuickNav
},
data() {
return {
@@ -801,6 +807,26 @@
this.tabs_click_event(this.tabs_id, this.is_tabs_type);
}
},
+ btn_event(name) {
+ switch(name) {
+ case 'quick_nav' :
+ if ((this.$refs.quick_nav || null) != null) {
+ this.$refs.quick_nav.quick_open_event();
+ }
+ break;
+ case 'lang' :
+ if ((this.$refs.lang_switch || null) != null) {
+ this.$refs.lang_switch.lang_open_event();
+ }
+ break;
+ }
+ },
+ popup_sub_language_event(e) {
+ // 重新设置当前页面导航标题
+ app.globalData.set_pages_navigation_bar_title();
+ // 重新读取数据配置
+ app.globalData.init_config();
+ }
},
};
diff --git a/pages/diy/components/diy/float-window.vue b/pages/diy/components/diy/float-window.vue
index 5f995c2e..eaca0a25 100644
--- a/pages/diy/components/diy/float-window.vue
+++ b/pages/diy/components/diy/float-window.vue
@@ -98,9 +98,10 @@
break;
// 快捷导航
case 'quick_nav' :
- if ((this.$refs.quick_nav || null) != null) {
- this.$refs.quick_nav.quick_open_event();
- }
+ this.$emit('btn_event', 'quick_nav');
+ break;
+ case 'lang' :
+ this.$emit('btn_event', 'lang');
break;
}
},
diff --git a/pages/login/login.vue b/pages/login/login.vue
index 825c9921..8705fea1 100644
--- a/pages/login/login.vue
+++ b/pages/login/login.vue
@@ -362,22 +362,7 @@
-
-
-
+
-
-
-
-
+
@@ -117,6 +101,7 @@
const app = getApp();
import componentCommon from '@/components/common/common';
import componentPopup from '@/components/popup/popup';
+ import componentLangSwitch from '@/components/lang-switch/lang-switch';
export default {
data() {
return {
@@ -128,14 +113,7 @@
home_user_login_type: [],
common_user_is_mandatory_bind_mobile: 0,
- // 多语言
- system_locale: '',
- application_locale: '',
home_use_multilingual_status: 0,
- // 语言选择
- popup_language_status: false,
- language_list: '',
- language_key: '',
// 实际提交的语言字段
language: '',
@@ -146,24 +124,16 @@
components: {
componentCommon,
- componentPopup
+ componentPopup,
+ componentLangSwitch
},
onLoad(params) {
// 调用公共事件方法
app.globalData.page_event_onload_handle(params);
-
// 多语言
- let system_info = uni.getSystemInfoSync();
- this.system_locale = system_info.language;
- this.application_locale = app.globalData.get_language_value();
- uni.onLocaleChange((e) => {
- this.application_locale = e.locale;
- });
var language_key = app.globalData.get_language_value();
var language_list = this.$t('language');
this.setData({
- language_list: language_list,
- language_key: language_key,
language: language_list[language_key],
});
},
@@ -174,7 +144,7 @@
// 初始化配置
app.globalData.init_config(0, this, 'init_config');
-
+
// 数据加载
this.init();
@@ -286,48 +256,21 @@
remove_user_cache_event(e) {
app.globalData.remove_user_cache_event(false);
},
-
- // 打开语言选择弹窗
- open_language_event() {
- this.setData({
- popup_language_status: !this.popup_language_status,
- });
+ open_language_event () {
+ if ((this.$refs.lang_switch || null) != null) {
+ this.$refs.lang_switch.lang_open_event();
+ }
},
-
- // 关闭语言弹窗
- popup_language_close_event() {
- this.setData({
- popup_language_status: false,
- });
- },
-
- // 选择语言
- checked_language_event(e) {
- this.setData({
- language_key: e.currentTarget.dataset.key,
- });
- },
-
// 提交语言选择
- popup_sub_language_event() {
- this.language_change(this.language_key);
- var language_list = this.$t('language');
+ popup_sub_language_event(e) {
this.setData({
- language_list: language_list,
- language: language_list[this.language_key],
- popup_language_status: false,
+ language: e,
});
// 重新设置当前页面导航标题
app.globalData.set_pages_navigation_bar_title();
// 重新读取数据配置
app.globalData.init_config();
},
-
- // 多语言切换
- language_change(key) {
- uni.setLocale(key);
- this.$i18n.locale = key;
- },
},
};