提交 4f270dee 编写于 作者: G gongfuxiang

商品url地址使用后 端生成、商品底部购买导航新增url事件、左侧小导航返回优化

上级 92b85b48
......@@ -14,7 +14,7 @@
</view>
<view class="items">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<!-- 图片 -->
<image :class="'goods-image fl radius '+((item.is_error || 0) == 1 ? 'opacity' : '')" :src="item.images" mode="aspectFill"></image>
<!-- 错误 -->
......@@ -26,7 +26,7 @@
<!-- 基础 -->
<view class="goods-base">
<!-- 标题、规格 -->
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<view :class="'goods-title multi-text margin-bottom-sm '+((item.is_error || 0) == 1 ? 'cr-grey' : '')">{{item.title}}</view>
</navigator>
<view v-if="item.spec != null" class="margin-bottom-sm">
......
......@@ -340,19 +340,19 @@
<image :src="nav_home_button_info.icon" mode="scaleToFill"></image>
<text class="dis-block text-size-xs cr-gray">{{nav_home_button_info.text}}</text>
</view>
<!-- 客服 -->
<component-online-service v-if="online_service_status == 1" :propIsGoods="true" :propIsNav="true" :propCard="true" :propTitle="goods.title" :propImg="goods.images" :propPath="'/pages/goods-detail/goods-detail?id='+goods.id" :propChatUrl="(plugins_chat_data == null) ? '' : plugins_chat_data.chat_url"></component-online-service>
<!-- 购物车 -->
<view v-if="is_opt_cart == 1" class="item fl cp">
<navigator url="/pages/cart/cart" open-type="switchTab" hover-class="none">
<view class="badge-icon">
<component-badge :propNumber="quick_nav_cart_count"></component-badge>
</view>
<image :src="common_static_url+'cart-icon.png'" mode="scaleToFill"></image>
<text class="dis-block text-size-xs cr-gray">购物车</text>
</navigator>
</view>
</block>
<!-- 客服 -->
<component-online-service v-if="online_service_status == 1" :propIsGoods="true" :propIsNav="true" :propCard="true" :propTitle="goods.title" :propImg="goods.images" :propPath="'/pages/goods-detail/goods-detail?id='+goods.id" :propChatUrl="(plugins_chat_data == null) ? '' : plugins_chat_data.chat_url"></component-online-service>
<!-- 购物车 -->
<view v-if="is_opt_cart == 1" class="item fl cp">
<navigator url="/pages/cart/cart" open-type="switchTab" hover-class="none">
<view class="badge-icon">
<component-badge :propNumber="quick_nav_cart_count"></component-badge>
</view>
<image :src="common_static_url+'cart-icon.png'" mode="scaleToFill"></image>
<text class="dis-block text-size-xs cr-gray">购物车</text>
</navigator>
</view>
<!-- 收藏 -->
<view class="item fl cp" @tap="goods_favor_event">
<image :src="common_static_url+'favor'+(nav_favor_button_info.status == 1 ? '-active' : '')+'-icon.png'" mode="scaleToFill"></image>
......@@ -788,15 +788,11 @@
// 底部业务导航按钮数量处理
var value = 4;
if(this.is_opt_back == 1) {
value = 2;
} else {
if(this.is_opt_cart != 1) {
value--;
}
if(this.online_service_status != 1) {
value--;
}
if(this.is_opt_cart != 1) {
value--;
}
if(this.online_service_status != 1) {
value--;
}
this.setData({bottom_nav_bus_number: value});
} else {
......@@ -1044,6 +1040,14 @@
buy_event_type: type
});
break;
// url事件
case 'url':
if(value == null) {
app.globalData.showToast('url事件为空');
return false;
}
app.globalData.url_open(value);
break;
// 门店
case 'plugins-realstore' :
var temp_data_list = this.plugins_realstore_data;
......
......@@ -18,7 +18,7 @@
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main oh">
<view v-for="(item, index) in data_list" :key="index" class="item border-radius-main bg-white padding-bottom-sm margin-bottom-main oh pr">
<!-- 商品主体内容 -->
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="base padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.title}}</view>
......
......@@ -164,7 +164,7 @@
<view v-if="floor.goods.length > 0" class="goods-list">
<view v-for="(goods, index2) in floor.goods" :key="index2" class="goods bg-white border-radius-main oh pr">
<!-- 商品主体内容 -->
<navigator :url="'/pages/goods-detail/goods-detail?id=' + goods.id" hover-class="none">
<navigator :url="goods.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="goods.images" mode="aspectFit"></image>
<view class="goods-base padding-horizontal-main margin-top-sm">
<view class="goods-title multi-text margin-bottom-sm">{{goods.title}}</view>
......@@ -214,7 +214,7 @@
<text v-if="(item.user.province || null) != null"><text class="padding-left-xs padding-right-xs">-</text>{{item.user.province}}</text>
</view>
<view class="item-content fl">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none" class="single-text">
<navigator :url="item.goods_url" hover-class="none" class="single-text">
<image mode="widthFix" :src="item.images" class="va-m br"></image>
<text class="margin-left-sm single-text">{{item.title}}</text>
</navigator>
......
......@@ -26,7 +26,7 @@
</view>
<view class="data-list oh">
<view v-for="(item, index) in data.goods_list" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.title}}</view>
......
......@@ -69,7 +69,7 @@
</view>
<view class="goods-list oh">
<view v-for="(item, index) in data.goods_list" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main oh">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="base padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.title}}</view>
......
......@@ -83,7 +83,7 @@
</view>
<view class="goods-list oh">
<view v-for="(item, index) in goods_list" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main oh">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="base padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.title}}</view>
......
......@@ -23,7 +23,7 @@
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="30">
<view v-if="data_list.length > 0" class="data-list oh padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main oh">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="base padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.title}}</view>
......
......@@ -39,7 +39,7 @@
</view>
<view class="data-list oh">
<view v-for="(item, index) in data_base.goods_exchange_data" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods.id" hover-class="none">
<navigator :url="item.goods.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.goods.images" mode="aspectFit"></image>
<view class="padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.goods.title}}</view>
......
......@@ -149,9 +149,13 @@
<block v-if="cart_status">
<view class="cart-mask wh-auto ht-auto pf" :data-value="false" @tap="cart_event"></view>
<view class="cart-content bg-white border-radius-main pa oh">
<block v-if="(cart.data || null) != null && cart.data.length > 0">
<block v-if="(cart || null) != null && (cart.data || null) != null && cart.data.length > 0">
<view class="oh br-b padding-vertical-main padding-horizontal-main">
<text class="va-m text-size-xs cr-base">已选商品</text>
<view class="dis-inline-block margin-left-xl text-size-xs">
<text class="cr-red">没有已加购的商品?</text>
<text class="br-green cr-green round padding-left padding-right padding-top-xs padding-bottom-xs cp" @tap="buy_use_type_event">切换下单类型</text>
</view>
<view class="fr cp" @tap="cart_all_delete_event">
<view class="dis-inline-block va-m">
<uni-icons type="trash" size="12" color="#f00"></uni-icons>
......@@ -192,6 +196,10 @@
</block>
<block v-else>
<component-no-data propStatus="0" propMsg="请先选购商品"></component-no-data>
<view class="padding-bottom-xxxl margin-bottom-xxxl tc text-size-xs">
<text class="cr-red">没有已加购的商品?</text>
<text class="br-green cr-green round padding-left padding-right padding-top-xs padding-bottom-xs cp" @tap="buy_use_type_event">切换下单类型</text>
</view>
</block>
</view>
</block>
......@@ -382,9 +390,9 @@
// 获取数据、仅首次调用
// 获取列表接口和购物车
if(this.is_first == 1) {
this.setData({is_first: 0});
this.get_data_list();
this.get_cart_data();
this.get_cart_data(this.is_first);
this.setData({is_first: 0});
} else {
// 非首次赋值购物车数据
this.setData({
......@@ -415,7 +423,7 @@
});
},
// 获取数据-获取数据
// 获取数据-商品列表
get_data_list(is_mandatory) {
// 分页是否还有数据
if ((is_mandatory || 0) == 0) {
......@@ -839,8 +847,8 @@
});
},
// 获取购物车数据
get_cart_data() {
// 获取购物车数据、参数是否首次请求
get_cart_data(is_first = 0) {
uni.request({
url: app.globalData.get_request_url("cartdata", "detail", "realstore"),
method: 'POST',
......@@ -854,6 +862,13 @@
cart: res.data.data
});
this.cart_data_list_handle();
// 首次判断是否需要开启购物车
if(is_first == 1 && (this.params.is_show_cart || 0) == 1) {
this.setData({
cart_status: true
});
}
} else {
app.globalData.showToast('请求失败,请重试!');
}
......
......@@ -23,7 +23,7 @@
<view class="goods bg-white padding-main border-radius-main spacing-mb">
<view class="br-b padding-bottom-main fw-b text-size">商品信息</view>
<view v-for="(item, index) in detail.items" :key="index" class="goods-item br-b-dashed oh padding-main">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-image fl radius" :src="item.images" mode="aspectFill"></image>
<view class="goods-base pr">
<view class="multi-text">{{item.title}}</view>
......
......@@ -26,7 +26,7 @@
<view v-if="goods.length > 0">
<view class="data-list oh">
<view v-for="(item, index) in goods" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.title}}</view>
......
......@@ -116,7 +116,7 @@
<block v-if="goods_list.length > 0">
<block v-for="(item, index) in goods_list" :key="index">
<view v-if="item.active != 0" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main oh">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="base padding-horizontal-main margin-top">
<view class="multi-text">{{item.title}}</view>
......
......@@ -17,7 +17,7 @@
<scroll-view :scroll-y="true" class="scroll-box scroll-box-ece-nav" @scrolltolower="scroll_lower" lower-threshold="30">
<view v-if="data_list.length > 0" class="data-list padding-horizontal-main padding-top-main oh">
<view v-for="(item, index) in data_list" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main oh">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="base padding-horizontal-main margin-top">
<view class="multi-text">{{item.title}}</view>
......
......@@ -56,7 +56,7 @@
</view>
<view class="data-list oh">
<view v-for="(item, index) in data.goods_list" :key="index" class="item padding-bottom-sm border-radius-main bg-white margin-bottom-main">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-img dis-block" :src="item.images" mode="aspectFit"></image>
<view class="padding-horizontal-main margin-top-sm">
<view class="multi-text">{{item.title}}</view>
......
......@@ -3,7 +3,7 @@
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="30">
<view v-if="data_list.length > 0" class="padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="padding-main border-radius-main oh bg-white spacing-mb">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-image fl radius" :src="item.images" mode="aspectFill"></image>
<view class="goods-base">
<view class="goods-title multi-text">{{item.title}}</view>
......
......@@ -3,7 +3,7 @@
<scroll-view :scroll-y="true" class="scroll-box" @scrolltolower="scroll_lower" lower-threshold="30">
<view v-if="data_list.length > 0" class="padding-horizontal-main padding-top-main">
<view v-for="(item, index) in data_list" :key="index" class="padding-main border-radius-main oh bg-white spacing-mb">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-image fl radius" :src="item.images" mode="aspectFill"></image>
<view class="goods-base">
<view class="goods-title multi-text">{{item.title}}</view>
......
......@@ -5,7 +5,7 @@
<form @submit="formSubmit" class="form-container">
<view v-for="(item, index) in detail.items" :key="index" class="form-gorup oh">
<view class="oh">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-image fl radius br margin-right-lg" :src="item.images" mode="aspectFill"></image>
</navigator>
<view class="item-base fl margin-top-sm">
......
......@@ -23,7 +23,7 @@
<view class="goods bg-white padding-main border-radius-main spacing-mb">
<view class="br-b padding-bottom-main fw-b text-size">商品信息</view>
<view v-for="(item, index) in detail.items" :key="index" class="goods-item br-b-dashed oh padding-main">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + item.goods_id" hover-class="none">
<navigator :url="item.goods_url" hover-class="none">
<image class="goods-image fl radius" :src="item.images" mode="aspectFill"></image>
<view class="goods-base pr">
<view class="multi-text">{{item.title}}</view>
......
......@@ -4,7 +4,7 @@
<!-- 商品 -->
<view class="goods padding-main border-radius-main bg-white spacing-mb">
<view class="goods-item oh">
<navigator :url="'/pages/goods-detail/goods-detail?id=' + order_data.items.goods_id" hover-class="none">
<navigator :url="order_data.items.goods_url" hover-class="none">
<image class="goods-image fl radius" :src="order_data.items.images" mode="aspectFill"></image>
<view class="goods-base">
<view class="multi-text">{{order_data.items.title}}</view>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册