fix: 🐛 uni-navigator添加 :render-link="false" 属性, 去掉编译成h5自动添加的a标签

This commit is contained in:
jqtmviyu 2025-05-15 15:00:48 +08:00
parent 7adca6685d
commit fb840234cd
20 changed files with 216 additions and 78 deletions

View File

@ -5,6 +5,7 @@
</view>
<view class="guess">
<navigator
:render-link="false"
class="guess-item"
v-for="item in guessList"
:key="item.id"

View File

@ -8,7 +8,12 @@
@change="handleChange"
>
<swiper-item v-for="item in props.list" :key="item.id">
<navigator url="/pages/index/index" hover-class="none" class="navigator">
<navigator
:render-link="false"
url="/pages/index/index"
hover-class="none"
class="navigator"
>
<image mode="aspectFill" class="image" :src="item.imgUrl"></image>
</navigator>
</swiper-item>

View File

@ -22,6 +22,7 @@
:class="{ checked: item.selected }"
></text>
<navigator
:render-link="false"
:url="`/pages/goods/goods?id=${item.id}`"
hover-class="none"
class="navigator"
@ -60,7 +61,12 @@
<view class="cart-blank" v-else>
<image src="/static/images/blank_cart.png" class="image" />
<text class="text">购物车还是空的快来挑选好货吧</text>
<navigator open-type="switchTab" url="/pages/index/index" hover-class="none">
<navigator
:render-link="false"
open-type="switchTab"
url="/pages/index/index"
hover-class="none"
>
<button class="button">去首页看看</button>
</navigator>
</view>
@ -83,7 +89,7 @@
<!-- 未登录: 提示登录 -->
<view class="login-blank" v-else>
<text class="text">登录后可查看购物车中的商品</text>
<navigator url="/pages/login/login" hover-class="none">
<navigator :render-link="false" url="/pages/login/login" hover-class="none">
<button class="button">去登录</button>
</navigator>
</view>

View File

@ -33,6 +33,7 @@
</view>
<view class="section">
<navigator
:render-link="false"
v-for="goods in item.goods"
:key="goods.id"
class="goods"

View File

@ -48,7 +48,11 @@
transform: translate(0%, 0px) translateZ(0px);
"
>
<navigator class="navigator JbcSwiper--navigator" hover-class="none">
<navigator
:render-link="false"
class="navigator JbcSwiper--navigator"
hover-class="none"
>
<image class="image JbcSwiper--image sk-image" mode="aspectFill"></image>
</navigator>
</swiper-item>
@ -60,7 +64,11 @@
transform: translate(100%, 0px) translateZ(0px);
"
>
<navigator class="navigator JbcSwiper--navigator" hover-class="none">
<navigator
:render-link="false"
class="navigator JbcSwiper--navigator"
hover-class="none"
>
<image class="image JbcSwiper--image sk-image" mode="aspectFill"></image>
</navigator>
</swiper-item>
@ -79,7 +87,7 @@
<text class="name sk-transparent sk-text-27-2727-635 sk-text">居家生活用品</text>
</view>
<view class="section section">
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
<view class="name ellipsis sk-transparent sk-text-14-2857-313 sk-text"
>钻石陶瓷涂层多用锅18cm 小奶锅</view
@ -89,7 +97,7 @@
<text class="number sk-transparent sk-text-14-2857-254 sk-text">149.00</text>
</view>
</navigator>
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
<view class="name ellipsis sk-transparent sk-text-14-2857-51 sk-text"
>极光限定 珠光蓝珐琅锅</view
@ -106,7 +114,7 @@
<text class="name sk-transparent sk-text-27-2727-249 sk-text">收纳</text>
</view>
<view class="section section">
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
<view class="name ellipsis sk-transparent sk-text-14-2857-70 sk-text"
>给衣柜减减肥真空防潮压缩袋</view
@ -116,7 +124,7 @@
<text class="number sk-transparent sk-text-14-2857-442 sk-text">79.00</text>
</view>
</navigator>
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
<view class="name ellipsis sk-transparent sk-text-14-2857-343 sk-text"
>爆款明星好物抽屉式透明储物柜</view
@ -126,7 +134,7 @@
<text class="number sk-transparent sk-text-14-2857-258 sk-text">129.00</text>
</view>
</navigator>
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
<view class="name ellipsis sk-transparent sk-text-14-2857-321 sk-text"
>衣柜省空间神器棉麻涤·收纳挂袋</view
@ -136,13 +144,13 @@
<text class="number sk-transparent sk-text-14-2857-693 sk-text">55.00</text>
</view>
</navigator>
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
</navigator>
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
</navigator>
<navigator class="goods goods" hover-class="none">
<navigator :render-link="false" class="goods goods" hover-class="none">
<image class="image sk-image"></image>
</navigator>
</view>
@ -154,9 +162,9 @@
</template>
<style lang="scss">
// #ifdef H5
/* #ifdef H5 */
@import '@/components/styles/JbcSwiper.scss';
// #endif
/* #endif */
.sk-transparent {
color: transparent !important;

View File

@ -59,7 +59,7 @@
>
<text class="icon-handset sk-pseudo sk-pseudo-circle"></text>客服
</button>
<navigator class="icons-button sk-transparent" open-type="switchTab">
<navigator :render-link="false" class="icons-button sk-transparent" open-type="switchTab">
<text class="icon-cart sk-pseudo sk-pseudo-circle"></text>购物车
</navigator>
</view>

View File

@ -76,6 +76,7 @@
</view>
<view class="content">
<navigator
:render-link="false"
v-for="item in goods?.similarProducts"
:key="item.id"
class="goods"
@ -102,7 +103,12 @@
<text class="icon-handset"></text>客服
</button>
<!-- #endif -->
<navigator class="icons-button" url="/pages/cart/goodsCart" open-type="navigate">
<navigator
:render-link="false"
class="icons-button"
url="/pages/cart/goodsCart"
open-type="navigate"
>
<text class="icon-cart"></text>购物车
</navigator>
</view>

View File

@ -26,6 +26,7 @@
>
<view class="goods">
<navigator
:render-link="false"
hover-class="none"
class="navigator"
v-for="goodItem in subTypeItem.goodsItems.items"

View File

@ -1,18 +1,15 @@
<template>
<view class="category">
<navigator
:render-link="false"
class="category-item"
hover-class="none"
url="/pages/index/index"
v-for="item in props.list"
:key="item.id"
>
<view>
<image class="icon" :src="item.icon"></image>
</view>
<view>
<text class="text">{{ item.name }}</text>
</view>
<image class="icon" :src="item.icon"></image>
<text class="text">{{ item.name }}</text>
</navigator>
</view>
</template>

View File

@ -6,7 +6,12 @@
<text class="title-text">{{ item.title }}</text>
<text class="title-desc">{{ item.alt }}</text>
</view>
<navigator hover-class="none" :url="`/pages/hot/hot?type=${item.type}`" class="cards">
<navigator
:render-link="false"
hover-class="none"
:url="`/pages/hot/hot?type=${item.type}`"
class="cards"
>
<image
v-for="src in item.pictures"
:key="src"

View File

@ -10,7 +10,7 @@
transform: translate(0%, 0px) translateZ(0px);
"
>
<navigator class="navigator JbcSwiper--navigator" hover-class="none">
<navigator :render-link="false" class="navigator JbcSwiper--navigator" hover-class="none">
<image class="image JbcSwiper--image sk-image" mode="aspectFill"></image>
</navigator>
</swiper-item>
@ -26,25 +26,41 @@
</view>
<view is="pages/index/components/CategoryPanel">
<view class="category CategoryPanel--category">
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-158 sk-text"
>居家</text
>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-849 sk-text"
>锦鲤</text
>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-598 sk-text"
>服饰</text
>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-271 sk-text"
>母婴</text
@ -56,29 +72,49 @@
>个护</text
>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-999 sk-text"
>严选</text
>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-502 sk-text"
>数码</text
>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-420 sk-text"
>运动</text
>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-89 sk-text">杂项</text>
</navigator>
<navigator class="category-item CategoryPanel--category-item" hover-class="none">
<navigator
:render-link="false"
class="category-item CategoryPanel--category-item"
hover-class="none"
>
<image class="icon CategoryPanel--icon sk-image"></image>
<text class="text CategoryPanel--text sk-transparent sk-text-14-2857-28 sk-text">品牌</text>
</navigator>
@ -95,7 +131,7 @@
>精选全攻略</text
>
</view>
<navigator class="cards HotPanel--cards" hover-class="none">
<navigator :render-link="false" class="cards HotPanel--cards" hover-class="none">
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
</navigator>
@ -109,7 +145,7 @@
>最受欢迎</text
>
</view>
<navigator class="cards HotPanel--cards" hover-class="none">
<navigator :render-link="false" class="cards HotPanel--cards" hover-class="none">
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
</navigator>
@ -123,7 +159,7 @@
>精心优选</text
>
</view>
<navigator class="cards HotPanel--cards" hover-class="none">
<navigator :render-link="false" class="cards HotPanel--cards" hover-class="none">
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
</navigator>
@ -137,7 +173,7 @@
>生活加分项</text
>
</view>
<navigator class="cards HotPanel--cards" hover-class="none">
<navigator :render-link="false" class="cards HotPanel--cards" hover-class="none">
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
<image class="image HotPanel--image sk-image" mode="aspectFit"></image>
</navigator>
@ -147,11 +183,11 @@
</template>
<style lang="scss">
// #ifdef H5
/* #ifdef H5 */
@import '@/components/styles/JbcSwiper.scss';
@import './styles/CategoryPanel.scss';
@import './styles/HotPanel.scss';
// #endif
/* #endif */
.sk-transparent {
color: transparent !important;

View File

@ -4,35 +4,45 @@
<view class="profile" :style="{ paddingTop: safeAreaInsets!.top + 'px' }">
<!-- 情况1已登录 -->
<view class="overview" v-if="profile">
<navigator url="/pagesMember/profile/profile" hover-class="none">
<navigator :render-link="false" url="/pagesMember/profile/profile" hover-class="none">
<image class="avatar" mode="aspectFill" :src="profile.avatar"></image>
</navigator>
<view class="meta">
<view class="nickname">
{{ profile.nickname?.replace('黑马', '') || profile.account }}
</view>
<navigator class="extra" url="/pagesMember/profile/profile" hover-class="none">
<navigator
:render-link="false"
class="extra"
url="/pagesMember/profile/profile"
hover-class="none"
>
<text class="update">更新头像昵称</text>
</navigator>
</view>
</view>
<!-- 情况2未登录 -->
<view class="overview" v-else>
<navigator url="/pages/login/login" hover-class="none">
<navigator :render-link="false" url="/pages/login/login" hover-class="none">
<image
class="avatar gray"
mode="aspectFill"
src="http://yjy-xiaotuxian-dev.oss-cn-beijing.aliyuncs.com/picture/2021-04-06/db628d42-88a7-46e7-abb8-659448c33081.png"
></image>
</navigator>
<navigator class="meta" url="/pages/login/login" hover-class="none">
<navigator :render-link="false" class="meta" url="/pages/login/login" hover-class="none">
<view class="nickname"> 未登录 </view>
<view class="extra">
<text class="tips">点击登录账号</text>
</view>
</navigator>
</view>
<navigator class="settings" url="/pagesMember/settings/settings" hover-class="none">
<navigator
:render-link="false"
class="settings"
url="/pagesMember/settings/settings"
hover-class="none"
>
设置
</navigator>
</view>
@ -40,13 +50,19 @@
<view class="orders">
<view class="title">
我的订单
<navigator class="navigator" url="/pagesOrder/list/list?type=0" hover-class="none">
<navigator
:render-link="false"
class="navigator"
url="/pagesOrder/list/list?type=0"
hover-class="none"
>
查看全部订单<text class="icon-right"></text>
</navigator>
</view>
<view class="section">
<!-- 订单 -->
<navigator
:render-link="false"
v-for="item in orderTypes"
:key="item.type"
:class="item.icon"

View File

@ -16,6 +16,7 @@
<view class="locate">{{ item.fullLocation }} {{ item.address }}</view>
</view>
<navigator
:render-link="false"
class="edit right"
hover-class="none"
:url="`/pagesMember/address/address-form?id=${item.id}`"
@ -35,7 +36,9 @@
</scroll-view>
<!-- 添加按钮 -->
<view class="add-btn">
<navigator hover-class="none" url="/pagesMember/address/address-form"> 新建地址 </navigator>
<navigator :render-link="false" hover-class="none" url="/pagesMember/address/address-form">
新建地址
</navigator>
</view>
</view>
</template>

View File

@ -2,7 +2,12 @@
<view class="viewport">
<!-- 导航栏 -->
<view class="navbar" :style="{ paddingTop: safeAreaInsets?.top + 'px' }">
<navigator open-type="navigateBack" class="back icon-left" hover-class="none"></navigator>
<navigator
:render-link="false"
open-type="navigateBack"
class="back icon-left"
hover-class="none"
></navigator>
<view class="title">个人信息</view>
</view>
<!-- 头像 -->
@ -105,35 +110,54 @@ onLoad(() => {
// ,
const handleChangeAvatar = () => {
// #ifdef MP-WEIXIN
uni.chooseMedia({
count: 1,
mediaType: ['image'],
success: (res) => {
const tempFilePath = res.tempFiles[0].tempFilePath
console.log(tempFilePath)
uni.uploadFile({
url: '/member/profile/avatar',
filePath: tempFilePath,
name: 'file',
success: (res) => {
console.log(res)
if (res.statusCode === 200) {
const avatar = JSON.parse(res.data).result.avatar
profile.value!.avatar = avatar
memberStore.updateAvatar(avatar)
uni.showToast({
title: '修改头像成功',
icon: 'success',
})
} else {
const errorMsg = JSON.parse(res.data).message
uni.showToast({
title: errorMsg,
icon: 'error',
})
}
},
})
uploadAvatar(tempFilePath)
},
})
// #endif
// #ifdef H5
uni.chooseImage({
count: 1,
extension: ['jpg', 'png', 'jpeg'],
success: (res) => {
console.log(res)
const tempFilePath = res.tempFilePaths[0]
uploadAvatar(tempFilePath)
},
})
// #endif
}
//
const uploadAvatar = async (tempFilePath: string) => {
uni.uploadFile({
url: '/member/profile/avatar',
filePath: tempFilePath,
name: 'file',
success: (res) => {
console.log(res)
if (res.statusCode === 200) {
const avatar = JSON.parse(res.data).result.avatar
profile.value!.avatar = avatar
memberStore.updateAvatar(avatar)
uni.showToast({
title: '修改头像成功',
icon: 'success',
})
} else {
const errorMsg = JSON.parse(res.data).message
uni.showToast({
title: errorMsg,
icon: 'error',
})
}
},
})
}

View File

@ -2,7 +2,12 @@
<view class="viewport">
<!-- 列表1 -->
<view class="list" v-if="memberStore.profile">
<navigator url="/pagesMember/address/address" hover-class="none" class="item arrow">
<navigator
:render-link="false"
url="/pagesMember/address/address"
hover-class="none"
class="item arrow"
>
我的收货地址
</navigator>
</view>
@ -16,7 +21,9 @@
<!-- #endif -->
<!-- 列表3 -->
<view class="list">
<navigator hover-class="none" class="item arrow" url="">关于金佰川</navigator>
<navigator :render-link="false" hover-class="none" class="item arrow" url=""
>关于金佰川</navigator
>
</view>
<!-- 操作按钮 -->
<view class="action" v-if="memberStore.profile">

View File

@ -2,6 +2,7 @@
<scroll-view scroll-y class="viewport">
<!-- 收货地址 -->
<navigator
:render-link="false"
v-if="selectedAddress"
class="shipment"
hover-class="none"
@ -14,6 +15,7 @@
<text class="icon icon-right"></text>
</navigator>
<navigator
:render-link="false"
v-else
class="shipment"
hover-class="none"
@ -26,6 +28,7 @@
<!-- 商品信息 -->
<view class="goods">
<navigator
:render-link="false"
v-for="item in orderPreList?.goods"
:key="item.skuId"
:url="`/pages/goods/goods?id=${item.id}`"

View File

@ -2,8 +2,19 @@
<!-- 自定义导航栏: 默认透明不可见, scroll-view 滚动到 50 时展示 -->
<view class="navbar" :style="{ paddingTop: safeAreaInsets?.top + 'px' }">
<view class="wrap">
<navigator v-if="hasBack" open-type="navigateBack" class="back icon-left"></navigator>
<navigator v-else url="/pages/index/index" open-type="switchTab" class="back icon-home">
<navigator
:render-link="false"
v-if="hasBack"
open-type="navigateBack"
class="back icon-left"
></navigator>
<navigator
:render-link="false"
v-else
url="/pages/index/index"
open-type="switchTab"
class="back icon-home"
>
</navigator>
<view class="title">订单详情</view>
</view>
@ -35,6 +46,7 @@
<view class="status"> {{ OrderStateList[orderDetail.orderState].text }} </view>
<view class="button-group">
<navigator
:render-link="false"
class="button"
:url="`/pagesOrder/create/create?id=${query.id}`"
hover-class="none"
@ -82,6 +94,7 @@
<view class="goods">
<view class="item">
<navigator
:render-link="false"
class="navigator"
v-for="item in orderDetail.skus"
:key="item.id"
@ -104,7 +117,7 @@
<!-- 待评价状态:展示按钮 -->
<view class="action" v-if="orderDetail.orderState === OrderState.PendingReview">
<view class="button primary">申请售后</view>
<navigator url="" class="button"> 去评价 </navigator>
<navigator :render-link="false" url="" class="button"> 去评价 </navigator>
</view>
</view>
<!-- 合计 -->
@ -149,6 +162,7 @@
<!-- 其他订单状态:按需展示按钮 -->
<template v-else>
<navigator
:render-link="false"
class="button secondary"
:url="`/pagesOrder/create/create?id=${query.id}`"
hover-class="none"

View File

@ -8,7 +8,7 @@
>
<text class="sk-transparent sk-text-14-2857-212 sk-text">待发货</text>
</view>
<navigator class="goods orderList--goods" hover-class="none">
<navigator :render-link="false" class="goods orderList--goods" hover-class="none">
<view class="cover orderList--cover">
<image class="image orderList--image sk-image" mode="aspectFit"></image>
</view>
@ -39,6 +39,7 @@
</view>
<view class="action orderList--action">
<navigator
:render-link="false"
class="button orderList--button secondary orderList--secondary sk-transparent sk-text-14-2857-906 sk-text"
hover-class="none"
>
@ -53,7 +54,7 @@
>
<text class="sk-transparent sk-text-14-2857-180 sk-text">待发货</text>
</view>
<navigator class="goods orderList--goods" hover-class="none">
<navigator :render-link="false" class="goods orderList--goods" hover-class="none">
<view class="cover orderList--cover">
<image class="image orderList--image sk-image" mode="aspectFit"></image>
</view>
@ -84,6 +85,7 @@
</view>
<view class="action orderList--action">
<navigator
:render-link="false"
class="button orderList--button secondary orderList--secondary sk-transparent sk-text-14-2857-29 sk-text"
hover-class="none"
>

View File

@ -14,6 +14,7 @@
</view>
<!-- 商品信息点击商品跳转到订单详情不是商品详情 -->
<navigator
:render-link="false"
v-for="sku in item.skus"
:key="sku.id"
class="goods"
@ -56,6 +57,7 @@
</template>
<template v-else>
<navigator
:render-link="false"
class="button secondary"
:url="`/pagesOrder/create/create?orderId=${item.id}`"
hover-class="none"

View File

@ -25,6 +25,7 @@ const { guessRef, onScrollToLower } = useGuessList()
返回首页
</navigator>
<navigator
:render-link="false"
hover-class="none"
class="button navigator"
:url="`/pagesOrder/detail/detail?id=${query.id}`"