refactor: 统一替换小程序事件绑定为@tap并优化跳转逻辑

1. 全局替换@click为@tap以适配uni-app事件规范
2. 优化toLogin方法的路由获取逻辑,增加空值判断
3. 重构redirectTo跳转逻辑,统一tab页跳转使用reLaunch确保页面栈正确
This commit is contained in:
2026-06-27 13:46:29 +08:00
parent 55c8e58f32
commit 95194585d2
7 changed files with 40 additions and 32 deletions

View File

@@ -9,7 +9,7 @@
<view class="head">
<text class="title">{{ $lang('components.ns-login.bindMobileTitle') }}</text>
<text class="color-tip tips">{{ $lang('components.ns-login.bindMobileTip') }}</text>
<text class="iconfont icon-close color-tip" @click="cancelCompleteInfo"></text>
<text class="iconfont icon-close color-tip" @tap="cancelCompleteInfo"></text>
</view>
<view class="item-wrap">
<text class="label">{{ $lang('components.ns-login.mobileLabel') }}</text>
@@ -18,16 +18,16 @@
<view class="item-wrap" v-if="isOpenCaptcha">
<text class="label">{{ $lang('components.ns-login.captchaLabel') }}</text>
<input type="number" :placeholder="$lang('components.ns-login.captchaPlaceholder')" v-model="formData.vercode" maxlength="4" />
<image :src="captcha.img" class="captcha" @click="getCaptcha" show-menu-by-longpress></image>
<image :src="captcha.img" class="captcha" @tap="getCaptcha" show-menu-by-longpress></image>
</view>
<view class="item-wrap">
<text class="label">{{ $lang('components.ns-login.dynacodeLabel') }}</text>
<input type="number" :placeholder="$lang('components.ns-login.dynacodePlaceholder')" v-model="formData.dynacode" maxlength="4" />
<view class="send color-base-text" @click="sendMobileCode">{{ dynacodeData.codeText }}
</view>
<view class="send color-base-text" @tap="sendMobileCode">{{ dynacodeData.codeText }}
</view>
</view>
</template>
<button type="default" class="save-btn" @click="saveH5" :disabled="isDisabled">{{ $lang('components.ns-login.save') }}</button>
<button type="default" class="save-btn" @tap="saveH5" :disabled="isDisabled">{{ $lang('components.ns-login.save') }}</button>
<!-- #endif -->
<!-- #ifdef MP -->
@@ -37,21 +37,21 @@
<template>{{ forceBindingMobileControl ? $lang('components.ns-login.loginWithMobile') : $lang('components.ns-login.registerLogin') }}</template>
{{ $lang('components.ns-login.getServicesTip') }}
</text>
<text class="iconfont icon-close color-tip" @click="cancelCompleteInfo"></text>
<text class="iconfont icon-close color-tip" @tap="cancelCompleteInfo"></text>
</view>
<!-- 协议勾选 -->
<view style="display: flex;">
<view class="iconfont"
:class="isAgree ? 'icon-fuxuankuang1 color-base-text' : 'icon-fuxuankuang2'"
@click="isAgree = !isAgree"></view>
<view style="text-align: left; margin-left: 10rpx; padding-top: 2rpx; font-size: 28rpx;">
{{ $lang('components.ns-login.agree') }}
<text style="color: #4395ff;"
@click="tourl('/pages_tool/agreement/contenr?type=0')">{{ $lang('components.ns-login.privacyPolicy') }}</text>
<text style="color: #4395ff;"
@click="tourl('/pages_tool/agreement/contenr?type=1')">{{ $lang('components.ns-login.userServiceAgreement') }}</text>
</view>
@tap="isAgree = !isAgree"></view>
<view style="text-align: left; margin-left: 10rpx; padding-top: 2rpx; font-size: 28rpx;">
{{ $lang('components.ns-login.agree') }}
<text style="color: #4395ff;"
@tap="tourl('/pages_tool/agreement/contenr?type=0')">{{ $lang('components.ns-login.privacyPolicy') }}</text>
<text style="color: #4395ff;"
@tap="tourl('/pages_tool/agreement/contenr?type=1')">{{ $lang('components.ns-login.userServiceAgreement') }}</text>
</view>
</view>
<!-- 手机号授权按钮 -->
@@ -62,12 +62,12 @@
</button>
</block>
<block v-else>
<button class="auth-login save-btn border-0" style="border: none;" @click="authno">
<button class="auth-login save-btn border-0" style="border: none;" @tap="authno">
<text style="color: #fff; font-size: 30rpx;">{{ $lang('components.ns-login.authorizeMobile') }}</text>
</button>
</block>
<view @click="closeLogin"
<view @tap="closeLogin"
style="font-size: 30rpx; color: #888; text-align: center; padding-top: 10rpx;">
{{ $lang('components.ns-login.notNow') }}
</view>
@@ -115,7 +115,7 @@
<text class="color-base-text" v-else>{{ $lang('components.ns-login.getMobile') }}</text>
</button>
</view>
<button type="default" class="save-btn" @click="saveMp" :disabled="isDisabled">{{ $lang('components.ns-login.save') }}</button>
<button type="default" class="save-btn" @tap="saveMp" :disabled="isDisabled">{{ $lang('components.ns-login.save') }}</button>
</template>
<!-- #endif -->
</view>