| | |
| | | <search-bar @confirm="search" placeholder="商品名称、编号、拼音" class="search-bar"></search-bar> |
| | | <view class="list"> |
| | | <scroll-view class="list-left" scroll-y="true"> |
| | | <view class="list-left-row" |
| | | v-for="(item,index) in goodsTypeList" |
| | | v-if="item.parentId===0" |
| | | :class="index==selectIndex?'active':''" |
| | | @click="changeGoodsType(item.id, index)"> |
| | | <text>{{item.name}}</text> |
| | | <uni-collapse accordion="true" @change="toggleCollapse"> |
| | | <uni-collapse-item :showAnimation="true" :title="item.name" class="list-left-row" |
| | | v-if="item.parentId===0" v-for="item in goodsTypeList"> |
| | | <view class="list-row-wrap"> |
| | | <view class="list-row" :class="op.id==cateId?'blue':''" |
| | | v-for="op in goodsTypeList" |
| | | v-if="op.parentId===item.id" |
| | | @click="changeGoodsType(op.id)"> |
| | | {{op.name}} |
| | | </view> |
| | | </view> |
| | | </uni-collapse-item> |
| | | </uni-collapse> |
| | | </scroll-view> |
| | | <scroll-view class="list-right" scroll-y="true"> |
| | | <navigator :url="'../productDetail/index?goodsType='+item.goodsType+'&id='+item.id" hover-class="none" v-for="item in goodsList"> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import uniCollapse from '../../../components/uni-collapse/uni-collapse.vue' |
| | | import uniCollapseItem from '../../../components/uni-collapse-item/uni-collapse-item.vue' |
| | | import searchBar from '../../../components/searchBar/index.vue'; |
| | | import shoppingCart from './shoppingCart.vue' |
| | | export default { |
| | | components:{ |
| | | uniCollapse, |
| | | uniCollapseItem, |
| | | searchBar, |
| | | shoppingCart |
| | | }, |
| | |
| | | id: '', |
| | | goodsTypeList: [], |
| | | goodsList: [], |
| | | selectIndex: 0, |
| | | cateId: null,//当前产品类别id |
| | | selectItems: [], |
| | | queryKey: '' |
| | |
| | | }, |
| | | methods:{ |
| | | openShoppingCart(){ |
| | | this.$refs.shopCart.show() |
| | | this.$refs.shopCart.toggle() |
| | | }, |
| | | loadGoodsTypeList(){ |
| | | this.$httpUtils.request('/api/order/findShoppingGoodsType').then((res) => { |
| | |
| | | this.queryKey = val; |
| | | this.loadGoodsList(); |
| | | }, |
| | | getParentId(){ |
| | | let arr = this.goodsTypeList.filter((item) => { |
| | | return item.id===this.cateId |
| | | }) |
| | | return arr.length?arr[0].parentId:''; |
| | | }, |
| | | // 打开关闭面板 |
| | | toggleCollapse(arr){ |
| | | if(!arr.length){ |
| | | let parentId = this.getParentId(); |
| | | if(parentId){ |
| | | this.changeGoodsType(); |
| | | } |
| | | return; |
| | | } |
| | | let index = arr[0]; |
| | | let result = this.goodsTypeList.filter((item) => { |
| | | return item.parentId===0 |
| | | }) |
| | | this.changeGoodsType(result[index].id); |
| | | console.log(result) |
| | | }, |
| | | // 切换商品类型 |
| | | changeGoodsType(id, index){ |
| | | this.selectIndex = index; |
| | | changeGoodsType(id){ |
| | | this.cateId = id; |
| | | this.loadGoodsList(); |
| | | }, |
| | |
| | | overflow: hidden; |
| | | } |
| | | .list-left{ |
| | | width: 170rpx; |
| | | width: 200rpx; |
| | | background: #F6F6F8; |
| | | border-radius: 4px; |
| | | } |
| | |
| | | flex: 1; |
| | | } |
| | | .list-left-row{ |
| | | padding: 10px; |
| | | color: #8c9fad; |
| | | font-size: 13px; |
| | | border-bottom: 0; |
| | | } |
| | | .list-left-row.active{ |
| | | background: #FFFFFF; |
| | | color: #000000; |
| | | .uni-collapse{ |
| | | background: transparent; |
| | | } |
| | | |
| | | .uni-collapse-cell__title:active, .uni-collapse-cell--hover, .uni-collapse-cell--open, .uni-collapse-cell--disabled{ |
| | | background-color: #FFFFFF!important; |
| | | } |
| | | |
| | | .list-row-wrap{ |
| | | padding: 0 15px; |
| | | margin-top: -8px; |
| | | } |
| | | .list-row{ |
| | | font-size: 13px; |
| | | margin: 8px 0; |
| | | } |
| | | .list-right-row{ |
| | | display: flex; |