diff --git a/components/ns-login/ns-login.vue b/components/ns-login/ns-login.vue
index 7ce6a3b..ab36c2e 100644
--- a/components/ns-login/ns-login.vue
+++ b/components/ns-login/ns-login.vue
@@ -56,10 +56,18 @@
+
+
+
+
+
+
+
+
+
+
+ {{ $lang('components.ns-login.mobileLabel') }}
+
+
+
+ {{ $lang('components.ns-login.captchaLabel') }}
+
+
+
+
+ {{ $lang('components.ns-login.dynacodeLabel') }}
+
+ {{ dynacodeData.codeText }}
+
+
+
+
+
{{ $lang('components.ns-login.notNow') }}
@@ -109,11 +138,20 @@
{{ $lang('components.ns-login.mobileLabel') }}
+
+
+
+
+
+ {{ formData.mobile }}
+ {{ $lang('components.ns-login.getMobile') }}
+
+
@@ -170,12 +208,16 @@ export default {
isSend: false
},
// 小程序获取手机号所需数据
- authMobileData: {
- iv: '',
- encryptedData: ''
- },
- site_name: ''
- };
+ authMobileData: {
+ iv: '',
+ encryptedData: ''
+ },
+ site_name: '',
+ // #ifdef MP-HARMONY
+ // 鸿蒙专属:控制手机号+验证码表单显示
+ showHarmonyMobileForm: false,
+ // #endif
+ };
},
options: {
styleIsolation: 'shared'
@@ -203,7 +245,7 @@ export default {
if (this.forceBindingMobileControl) {
if (this.formData.mobile.length == 0) return true;
- // #ifdef H5
+ // #ifdef H5 || MP-HARMONY
// 验证码
if (this.isOpenCaptcha == 1 && this.formData.vercode.length == 0) return true;
// 动态码
@@ -343,7 +385,7 @@ export default {
openCompleteInfoPop() {
this.getRegisterConfig();
- // #ifdef H5
+ // #ifdef H5 || MP-HARMONY
if (!this.storeToken) this.getCaptchaConfig();
// #endif
@@ -676,6 +718,26 @@ export default {
this.forceBindMobile();
},
+ // #ifdef MP-HARMONY
+ // 鸿蒙元服务保存手机号:复用 H5 的强制绑定手机号流程
+ harmonySaveMobile() {
+ if (this.forceBindingMobileControl) {
+ let data = {
+ mobile: this.formData.mobile,
+ key: this.formData.key,
+ code: this.formData.dynacode
+ };
+ if (this.captcha.id != '') {
+ data.captcha_id = this.captcha.id;
+ data.captcha_code = this.formData.vercode;
+ }
+ if (!this.verify(data)) return;
+ }
+ // 鸿蒙环境下通常也开启了 forceBindingMobileControl(走 forceBindMobile 接口)
+ this.forceBindMobile();
+ },
+ // #endif
+
// 微信小程序保存数据
saveMp() {
if (this.formData.mobile === '') {
diff --git a/components/ns-navbar/ns-navbar.vue b/components/ns-navbar/ns-navbar.vue
index a2b4c5e..2c52cfa 100644
--- a/components/ns-navbar/ns-navbar.vue
+++ b/components/ns-navbar/ns-navbar.vue
@@ -53,7 +53,7 @@
let systemInfo = uni.getSystemInfoSync();
let menuButtonInfo = {};
// 如果是小程序,获取右上角胶囊的尺寸信息,避免导航栏右侧内容与胶囊重叠(支付宝小程序非本API,尚未兼容)
-// #ifdef MP-WEIXIN || MP-BAIDU || MP-TOUTIAO || MP-QQ
+// #ifdef MP-WEIXIN || MP-BAIDU || MP-TOUTIAO || MP-QQ || MP-HARMONY
menuButtonInfo = uni.getMenuButtonBoundingClientRect();
// #endif
diff --git a/components/ns-payment/ns-payment.vue b/components/ns-payment/ns-payment.vue
index c5f99a5..db619bf 100644
--- a/components/ns-payment/ns-payment.vue
+++ b/components/ns-payment/ns-payment.vue
@@ -98,6 +98,13 @@ export default {
{ name: this.$lang('components.nsPayment.alipay'), icon: 'icon-zhifubaozhifu-', type: 'alipay', provider: 'alipay' },
];
// #endif
+ // #ifdef MP-HARMONY
+ // 鸿蒙元服务的支付通道: 与微信小程序相同的 provider='wxpay',
+ // 但走鸿蒙 JSSDK 的 requestPayment(走鸿蒙支付服务而非 wx.requestPayment)
+ this.payTypeList = [
+ { name: this.$lang('components.nsPayment.wechatpay'), provider: 'wxpay', icon: 'icon-weixin1', type: 'wechatpay' },
+ ];
+ // #endif
let url;
// #ifdef H5
diff --git a/components/payment/payment.vue b/components/payment/payment.vue
index ee7874a..e756c22 100644
--- a/components/payment/payment.vue
+++ b/components/payment/payment.vue
@@ -95,6 +95,16 @@
i18nKey: 'components.payment.alipay'
}],
// #endif
+ // #ifdef MP-HARMONY
+ // 鸿蒙元服务的支付通道: provider='wxpay' 由鸿蒙 JSSDK 接管
+ payTypeList: [{
+ name: '微信支付',
+ provider: 'wxpay',
+ icon: 'icon-weixin1',
+ type: 'wechatpay',
+ i18nKey: 'components.payment.wechatpay'
+ }],
+ // #endif
payInfo: null,
balanceConfig: 0,
// 预售页面判断
diff --git a/pages_goods/_components/goods-detail-view/goods-detail-view.vue b/pages_goods/_components/goods-detail-view/goods-detail-view.vue
index b9ebd6f..edfd882 100644
--- a/pages_goods/_components/goods-detail-view/goods-detail-view.vue
+++ b/pages_goods/_components/goods-detail-view/goods-detail-view.vue
@@ -461,7 +461,7 @@
{{ $lang('goods.detail.detailView.generateSharePoster') }}
-
+