123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867 |
- <template>
- <app-layout>
- <view class="player" v-if="show_catList">
- <view class="player-content">
- <view class="player-title">请选择品牌</view>
- <view class="player-search">
- <view class="input"><input type="text" placeholder="请输入商品名称" v-model="player_search"/></view>
- <view class="btn" @click="getShop()">搜索</view>
- </view>
- <view class="player-list">
- <view class="player-item" v-for="(item,index) of cat_list"
- @click="getShop(item.id)"
- :key="index">
- {{item.name}}
- </view>
- </view>
- <view class="player-close" @click="hidden_catList">关闭</view>
- </view>
- </view>
- <view class="player player-one" v-if="show_cat">
- <view class="player-content">
- <view class="player-title">请选择分类商品</view>
- <view class="player-search">
- <view class="input"><input type="text" placeholder="请输入商品名称" v-model="player_search"/></view>
- <view class="btn" @click="getShop()">搜索</view>
- </view>
- <view class="player-list">
- <view class="player-item" v-for="(item,index) of cat_list_one"
- @click="addContrast(item.goods_id)"
- :key="index">
- <view class="player-left"><img :src="item.cover_pic" /></view>
- <view class="player-right">
- <view class="player-name">{{item.name}}</view>
- <view class="player-price">¥{{item.price}}</view>
- </view>
- </view>
- </view>
- <view class="player-close" @click="hidden_cat">关闭</view>
- </view>
- </view>
- <template v-if="goods">
- <view style="width:100%;overflow-x:scroll;">
- <view class="contrast" style="width:772px;">
- <view class="title">隐藏相同属性</view>
- <view class="colmun" v-if="contrastList">
- <view class="list" v-if="contrastList.info">
- <view class="contrast_item">
- <view class="contrast_key">商品信息</view>
- <view class="contrast_key" :class="'contrast_key'+(index+2)" v-for="(item,index) of contrastList.info" :key="index">
- <view class="pic"><img alt="手机图片" :src="item.cover_pic" /></view>
- <view class="name">{{item.name}}</view>
- <view class="price">¥{{item.price}}</view>
- <view class="buy" @click="goBuy(item.id,item.type)">立即购买</view>
- <view class="cancel"
- :class="{unable:index==0}"
- @click="cancel(item.id,index)">移除</view>
- </view>
- <view class="contrast_key" :class="'contrast_key'+(index+2)" v-for="(item,index) of (4 - contrastList.info.length)" :key="index">
- <view class="buy" @click="getShopList()">添加商品</view>
- </view>
- </view>
- </view>
- <view class="list" v-for="(item,index) of contrastList.list" :key="index" v-if="contrastList.list" style="width:772px;float:left;">
- <view class="contrast_title" v-if="item.length>0">{{item[0].title}}</view>
- <view class="contrast_item" v-for="(value,key) of item" :key="key">
- <view class="contrast_key" :class="'contrast_key'+(ind+1)" v-for="(ite,ind) of value.text" :key="ind">
- {{ite}}
- </view>
- <view class="contrast_key" :class="'contrast_key'+(ind+1)" v-for="(ite,ind) of (5 - value.text.length)" :key="ind">
- </view>
- </view>
- </view>
- </view>
- </view>
- </view>
- <u-attr
- v-if="is_negotiable === 0 && exchangeStatus ==null"
- v-model="attrShow"
- :goods="goods"
- :themeObject="themeObject"
- :checked="checked"
- @check="check"
- >
- </u-attr>
- </template>
- </app-layout>
- </template>
- <script>
- import {mapGetters, mapState} from "vuex";
- import appGoodsBanner from "../../components/page-component/goods/app-goods-banner.vue";
- import appGoodsRecommend from "../../components/page-component/app-goods-recommend/app-goods-recommend.vue";
- import appQuickNavigation from "../../components/page-component/app-quick-navigation/app-quick-navigation.vue";
- import appComposition from'../../components/basic-component/app-composition/app-composition.vue';
- import AppVipCard from '../../components/page-component/app-vip-card/app-vip-card';
- import uniSwiperDot from '../../components/basic-component/uni-swiper-dot/uni-swiper-dot';
- import appGoodsFlashSale from '../../components/page-component/goods/app-goods-flash-sale.vue';
- import uAttr from '../../components/page-component/goods/u-attr.vue';
- import appGoodsFullReduce from '../../components/page-component/goods/app-goods-full-reduce.vue';
- import bdInfo from '@/components/page-component/goods/bd-info';
- import bdCoupon from '@/components/page-component/goods/bd-coupon.vue';
- import bdXbc from '@/components/page-component/goods/bd-xbc.vue';
- import bdKb from '@/components/page-component/goods/bd-kb.vue';
- import bdHc from '@/components/page-component/goods/bd-hc.vue';
- import bdDetail from '@/components/page-component/goods/bd-detail.vue';
- import bdComments from '@/components/page-component/goods/bd-comments.vue';
- import appClose from '@/components/basic-component/app-close/app-close.vue';
-
- export default {
- name: "goods",
- components: {
- appGoodsBanner,
- 'app-goods-recommend': appGoodsRecommend,
- 'app-quick-navigation': appQuickNavigation,
- 'app-composition': appComposition,
- appClose,
- uniSwiperDot,
- AppVipCard,
- appGoodsFlashSale,
- appGoodsFullReduce,
- uAttr,
- bdInfo,
- bdCoupon,
- bdXbc,
- bdKb,
- bdHc,
- bdDetail,
- bdComments
- },
- data() {
- return {
- contrastList:null, //对比参数列表
- contrastApi:this.$api.poster.goods_contrast,
- catListApi:this.$api.poster.cat_list,
- searchApi:this.$api.poster.search,
- catApi:this.$api.poster.cat,
- player_search:'',
- cat_id:null, //购物车类型id-父级
- cat_list:null, //购物车列表
- cat_list_one:null, //商品列表
- show_catList:false, //是否显示推荐商品类型列表
- show_cat:false, //显示商品列表
- attrShow:false,
-
- showClose: false,
- is_open: 0,
- goods: null,
- selectAttr: null,
- recommend_list: null,
- is_vip: false,
- is_vip_card_user: 0,
- current: 0,
- discount: null,
- attrShow: false,
- shareData: null,
- contact_tel:'',
- contact: '',
- contact_web:'',
- poster_config: this.$api.goods.poster,
- poster_generate: this.$api.poster.goods_new,
- // 限时抢购
- flash_sale: null,
- checked: null,
- // 商品服务
- services: null,
- // 商品详情
- detail: null,
- // 商品ID
- goodsId: null,
- // 套餐组合
- composition: null,
- autoplay: true,
- full_reduce: null,
- goods_marketing_award: null,
- express: null,
- goods_marketing: null,
- exchangeStatus: null,
- exchange: null,
- price: null,
- level_show: null,
- sales: null,
- unit: null,
- is_sales: null,
- extra_quick_share: null,
- price_max: null,
- price_min: null,
- price_member_max: null,
- price_member_min: null,
- original_price: null,
- subtitle: null,
- is_negotiable: null,
- name: null,
- app_share_pic: null,
- app_share_title: null,
- goodsType: null,
- favorite: null,
- goods_coupon_center: null,
- guarantee_title: null,
- guarantee_pic: null,
- param_content: null,
- param_name: null,
- attr_groups: null,
- goods_num: null,
- good_stock: null
- };
- },
- computed: {
- themeObject:function() {
- return {
- back: this.getTheme + '-m-back ' + this.getTheme,
- backP: this.getTheme + '-m-back-p ' + this.getTheme,
- backO: this.getTheme + '-m-back-o ' + this.getTheme,
- theme: this.getTheme,
- color: this.getTheme + '-m-text ' + this.getTheme,
- sBack: this.getTheme + '-s-back ' + this.getTheme,
- border: this.getTheme + '-m-border ' + this.getTheme,
- }
- },
- ...mapState({
- mall: state => state.mallConfig.mall,
- gConfig: state => state.gConfig,
- }),
- ...mapGetters('mallConfig', {
- getTheme: 'getTheme',
- }),
- good_negotiable: function() {
- let good_negotiable = this.mall.setting.good_negotiable;
- this.contact_tel = '';
- this.contact = '';
- this.contact_web = '';
- let arr = [];
- for (let i = 0; i < good_negotiable.length; i++) {
- if (good_negotiable[i] === 'contact_tel') {
- this.contact_tel = 'contact_tel';
- }
- if (good_negotiable[i] === 'contact') {
- this.contact = 'contact';
- }
- if (good_negotiable[i] === 'contact_web') {
- this.contact_web = 'contact_web';
- }
- }
- if (this.contact_tel) {
- arr.push(this.contact_tel);
- }
- if (this.contact) {
- arr.push(this.contact);
- }
- if (this.contact_web) {
- arr.push(this.contact_web);
- }
- return arr;
- },
- contactBtn: function() {
- const len = this.good_negotiable.length;
- const theme = this.getTheme;
- if (len === 3 && (theme === 'a' || theme === 'b' || theme === 'f')) {
- return `${theme}-m-back ${theme}-s-text ${theme}`;
- } else if (len === 3 && !(theme === 'a' || theme === 'b' || theme === 'f')) {
- return `${theme}-m-back ${theme}-s-text ${theme}`;
- } if (len === 2 && (theme === 'a' || theme === 'b' || theme === 'f') && !this.contact_tel) {
- return `${theme}-s-back text ${theme}`;
- } else if (len === 2 && (theme === 'a' || theme === 'b' || theme === 'f') && this.contact_tel) {
- return `${theme}-m-back ${theme}-s-text ${theme}`;
- } else if (len === 2 && !(theme === 'a' || theme === 'b' || theme === 'f') && !this.contact_tel) {
- return `${theme}-s-back text ${theme}`;
- } else if (len === 2 && !(theme === 'a' || theme === 'b' || theme === 'f') && this.contact_tel) {
- return `${theme}-m-back ${theme}-s-text ${theme}`;
- } else {
- return `${theme}-m-back ${theme}-s-text ${theme}`;
- }
- }
- },
- onLoad(options) {
- // #ifdef MP-WEIXIN
- wx.showShareMenu({
- menus: ['shareAppMessage', 'shareTimeline']
- })
- // #endif
- if (this.isLogin) {
- this.$store.dispatch('user/info');
- } else {
- }
- if(options.exchange) {
- this.exchangeStatus = options.exchange;
- this.exchange = options;
- }
- this.loadData(options.id);
- let lastId = wx.getStorageSync("current")
- if(lastId){
- if(lastId != options.id){
- wx.removeStorageSync("contrast")
- wx.setStorageSync("current",options.id)
- }
- }else{
- wx.setStorageSync("current",options.id)
- }
- },
- onShareAppMessage(object) {
- if (object.from === 'button' && this.shareData) {
- return this.$shareAppMessage(this.shareData);
- }
- return this.$shareAppMessage({
- title: this.app_share_title ? this.app_share_title : this.name,
- imageUrl: this.app_share_pic ? this.app_share_pic : '',
- path: '/pages/goods/goods',
- params: {
- id: this.goodsId
- }
- });
- },
- // #ifdef MP-WEIXIN
- onShareTimeline() {
- // 分享朋友圈beta
- return this.$shareTimeline({
- title: this.app_share_title ? this.app_share_title : this.name,
- query: {
- id: this.goodsId
- }
- });
- },
- // #endif
- methods: {
- goBuy(id,data){
- //判断登陆
- uni.navigateTo({
- url: `/pages/goods/goods?id=${id}`
- });
- },
- cancel(id,index){
- console.log(id,index)
- if(index){
- let contrast = wx.getStorageSync("contrast")
- console.log(contrast)
- let len = contrast.indexOf(id)
- console.log(len)
- if(len>=0){
- contrast.splice(len,1)
- console.log(contrast)
- if(contrast.length==0){
- console.log(342)
- wx.removeStorageSync("contrast")
- }else{
- wx.setStorageSync("contrast",contrast)
- }
- this.getCurrentData()
- }
- }
- },
- addContrast(id){
- let current = wx.getStorageSync("current")
- let contrast = wx.getStorageSync("contrast")
- if(current != id){
- if(!contrast){
- contrast = []
- }
- contrast.push(id)
- wx.setStorageSync("contrast",contrast)
- this.show_catList = false
- this.show_cat = false
- this.player_search = ''
- console.log(363)
- console.log(contrast)
- this.getCurrentData()
- }
- },
- hidden_cat(){
- this.show_cat = false
- this.player_search = ''
- },
- getShop(id){
- let keyword = this.player_search
- let params
- let url
-
- if(id){
- url = this.catApi
- params = {
- cat_id: id
- }
- }else{
- url = this.searchApi
- params = {
- keyword: keyword
- }
- }
- console.log(387)
- console.log(params)
- let resUrl = this.catApi
- this.$request({
- url: url,
- data: params
- }).then(response => {
- this.$hideLoading();
- if (response.code === 0) {
- this.cat_list_one = response.data.list
- this.show_cat = true
- this.show_catList = false
- }
- })
- },
- hidden_catList(){
- this.show_catList = false
- this.player_search = ''
- },
- getShopList(){
- let resUrl = this.catListApi
- this.$request({
- url: this.catListApi,
- data: {
- cat_id: this.cat_id
- }
- }).then(response => {
- this.$hideLoading();
- console.log(412)
- if (response.code === 0) {
- this.cat_list = response.data.list
- this.show_catList = true
- }
- })
- },
- getCurrentData(){
- let query = this.goodsId
- let contrast = wx.getStorageSync("contrast")
- console.log(427)
- console.log(contrast)
- if(contrast){
- console.log(430,this.goodsId)
- query = this.goodsId + ',' + contrast.join(',')
- }
- let resUrl = this.contrastApi
- console.log(433)
- console.log('query:',query)
- this.$request({
- url: this.contrastApi,
- data: {
- goods_id: query
- }
- }).then(response => {
- this.$hideLoading();
- if (response.code === 0) {
- //当前商品类型id
- if(response.data.length>=0&&response.data[0].cat_id){
- this.cat_id = response.data[0].cat_id
- }
- this.formatData(response.data)
- }
- })
- },
- formatData(data){
- let _this = this
- let list = []
- let info = []
- //商品信息
- data.forEach((items,indexs)=>{
- let obj = {}
- obj.cover_pic = items.goods.cover_pic
- obj.id = items.goods.id
- obj.name = items.goods.name
- obj.price = items.goods.price
- info.push(obj)
- })
- //参数信息
- data.forEach((items,indexs)=>{
- if(indexs==0){
- data[indexs].params.forEach((item,index)=>{
- let line = []
- data[indexs].params[index].params.forEach((ite,inde)=>{
- let text = []
- let title = ''
-
- text.push(data[indexs].params[index].params[inde].name)
- text.push(data[indexs].params[index].params[inde].value)
- data.forEach((it,i)=>{
- if(i!=0){
- if(data[i].params.length>0)
- text.push(data[i].params[index].params[inde].value||'')
- }
- })
- title = data[indexs].params[index].name
- line.push({
- title:title,
- text:text
- })
- })
- list.push(line)
- })
- }
- })
- this.contrastList = {}
- this.contrastList.list = list
- this.contrastList.info = info
- },
-
- getMall(e) {
- this.is_open = e.is_open;
- },
- toExchange() {
- let mch_list = [{
- mch_id: 0,
- goods_list: [{
- id: this.exchange.id,
- attr: this.exchange.attr,
- num: this.exchange.goods_num,
- cat_id: 0,
- goods_attr_id: this.exchange.attr_id
- }],
- code: this.exchange.code,
- token: this.exchange.token,
- }];
- let url = `/pages/order-submit/order-submit?mch_list=${JSON.stringify(mch_list)}`;
- url += `&preview_url=${encodeURIComponent(this.$api.exchange.exchange_preview)}&submit_url=${encodeURIComponent(this.$api.exchange.exchange_submit)}&plugin=exchange`;
- uni.navigateTo({
- url: url
- })
- },
- // 规格选择
- check(obj) {
- this.checked = obj;
- },
- change(e) {
- if(e.detail.source === 'touch') {
- this.current = e.detail.current;
- }
- if(e.detail.source === 'autoplay') {
- this.current = e.detail.current;
- }
- },
- quickShare(info) {
- this.shareData = info;
- },
- toComposition(item) {
- let id = item.id > 0 ? item.id : this.composition.list[0].id
- uni.navigateTo({
- url: this.composition.url + '?goods_id=' + this.goodsId + '&composition_id=' + id
- })
- },
- loadData(id) {
- this.$showLoading();
- this.$request({
- url: this.$api.goods.detail,
- data: {
- id: id
- }
- }).then(response => {
- this.$hideLoading();
- if (response.code === 0) {
- let { services,
- detail, name,
- vip_card_appoint, plugin_extra, id,
- goods_activity, goods_marketing_award,
- goods_marketing, express,
- price, sales,
- level_show, is_sales, unit, extra_quick_share,
- price_max, price_min, price_member_max,
- price_member_min, original_price, subtitle,
- is_negotiable, app_share_title,
- app_share_pic, type, favorite, goods_coupon_center,
- guarantee_title, guarantee_pic, param_content,
- param_name, attr_groups, goods_num, good_stock
- } = response.data.goods;
- uni.setNavigationBarTitle({
- title: name
- });
-
- this.name = name;
- this.app_share_pic = app_share_pic;
- this.app_share_title = app_share_title;
- this.goods = response.data.goods;
- this.services = services;
- this.detail = detail;
- this.goodsId = id;
- this.flash_sale = plugin_extra.flash_sale;
- this.composition = plugin_extra.composition;
- this.goods_marketing_award = goods_marketing_award;
- this.goods_marketing = goods_marketing;
- this.express = express;
- this.price = price;
- this.level_show = level_show;
- this.sales = sales;
- this.unit = unit;
- this.is_sales = is_sales;
- this.price_max = price_max;
- this.price_min = price_min;
- this.price_member_max = price_member_max;
- this.price_member_min = price_member_min;
- this.original_price = original_price;
- this.subtitle = subtitle;
- this.is_negotiable = is_negotiable;
- this.extra_quick_share = extra_quick_share;
- this.goodsType = type;
- this.favorite = favorite;
- this.goods_coupon_center = goods_coupon_center;
- this.guarantee_title = guarantee_title;
- this.param_content = param_content;
- this.guarantee_pic = guarantee_pic;
- this.attr_groups = attr_groups;
- this.param_name = param_name;
- this.goods_num = goods_num;
- this.good_stock = good_stock;
- if (goods_activity) {
- this.full_reduce = goods_activity.full_reduce;
- }
- if(vip_card_appoint.discount || vip_card_appoint.discount === '0.00') {
- this.is_vip = true;
- this.discount = vip_card_appoint.discount
- }
- this.is_vip_card_user = vip_card_appoint.is_vip_card_user;
- this.loadRecommend();
-
- //
- this.getCurrentData()
- } else {
- uni.showToast({
- title: response.msg,
- icon: 'none'
- });
- }
- }).catch(() => {
- this.$hideLoading();
- });
- },
- onAttr(data) {
- this.selectAttr = data;
- },
- loadRecommend() {
- this.$request({
- url: this.$api.goods.new_recommend,
- data: {
- goods_id: this.goodsId,
- type: 'goods'
- }
- }).then(response => {
- if (response.code === 0) {
- this.recommend_list = response.data.list;
- }
- });
- },
- back() {
- uni.reLaunch({
- url: '/pages/index/index'
- });
- },
- setFavorite() {
- let url = this.$api.user.favorite_add;
- let favorite = true;
- if (this.favorite) {
- url = this.$api.user.favorite_remove;
- favorite = false;
- }
- this.favorite = favorite;
- this.$request({
- url: url,
- data: {
- goods_id: this.goodsId
- }
- }).then(response => {
- if (response.code === 0) {
- } else {
- uni.showModal({
- title: '提示',
- content: response.msg,
- showCancel: false
- });
- }
- });
- },
- clickAttr(data) {
- if (this.goods.type === 'ecard' && data === 0) {
- uni.showToast({
- title: '虚拟商品不允许加入购物车',
- icon: 'none'
- });
- return;
- }
- this.attrShow = true;
- },
- setCoupon(index) {
- this.$set(this.goods_coupon_center[index], 'is_receive', 1);
- }
- },
- onShow() {
- this.autoplay = true;
- this.showClose = false;
- setTimeout(()=>{
- this.showClose = true;
- })
- },
- onHidden() {
- this.autoplay = false;
- }
- }
- </script>
- <style scoped lang="scss">
-
- .player{
- background:rgba(0,0,0,0.4);position:fixed;left:0;top:0;width:100%;height:100%;
- text-align:center;z-index:100;
- .player-content{
- position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);
- width:80%;background: #fff;
- .player-title{
- width: 100%;
- height: 45px;
- border-bottom: 1px solid #dfdfdf;
- background: #fcfcfc;
- line-height: 44px;
- text-align: center;
- font-size: 16px;
- }
- .player-search{
- width: 100%;line-height: 44px;text-align: center;
- font-size: 16px;height: 45px;border-bottom: 1px solid #dfdfdf;
- display:flex;justify-content: space-around;
- .input{
- width:72%;display:inline-block;
- input{text-align:left;padding-left:10px;
- outline:none;border:none;background:none;width:100%;margin-top:7px;display:block;height:30px;border-radius:20px;border:1px solid #ccc;
- }
- }
- .btn{
- display:inline-block;line-height:44px;
- margin-right:4%;
- }
- }
- .player-list{
- max-height:320px;
- overflow:scroll;
- .player-item{
- margin:0px 10px;
- height: 40px;
- line-height: 40px;
- border-bottom: 1px solid #e3e3e3;
- box-sizing: border-box;
- padding: 0px 10px;
- color: #45a1de;
- text-align:left;
- display:flex;
- .player-left{
- min-width:60px;
- width:60px;
- max-width:60px;
- height:60px;
- margin:10px 10px 10px 0;
- flex-shink:0;
- flex-grow:0;
- image{
- width:100%;
- height:100%;
- }
- }
- .player-right{
- margin:10px 0;
- flex-grow: 1;
- height:60px;
- .player-name{
- font-size:14px;font-weight:700;
- margin-bottom:4px;color:#333;
- display: -webkit-box;
- -webkit-box-orient: vertical;
- -webkit-line-clamp: 2;
- overflow: hidden;
- }
- .player-price{
- font-size:12px;
- line-height:14px;
- color:#f21c1c;
- }
- }
- }
- }
-
- .player-close{
- color: #45a1de;
- padding:10px;
- cursor:pointer;
- }
- }
- }
- .player-one .player-content .player-list .player-item{height:80px;line-height:18px;}
- .contrast{position:relative;}
- .title{position:fixed;left:0;top:0;width:100%;background:#ececec;text-align:center;color:red;font-size:14px;line-height:36px;height:36px;}
- .colmun{
- width:772px;
- padding-bottom:40px;
- padding-top:36px;
- overflow:hidden;
- text-align:center;
- border:1px solid rgb(239, 242, 245);
- .list{
- .contrast_title {
- line-height:38px;height:40px;box-sizing:border-box;text-align:left;padding:0 8px;font-weight:600;
- font-size:12px;color:#f21c1c;background:rgb(239, 242, 245);border:1px solid rgb(239, 242, 245);
- }
- .contrast_item {
- display:flex;
- border:1px solid rgb(239, 242, 245);
- .contrast_key{
- font-size:12px;
- width:80px;
- height:auto;
- box-sizing:border-box;
- text-align:center;
- padding:10px 8px;
- line-height:20px;
- min-height:40px;
- border:1px solid rgb(239, 242, 245);
- display:flex;
- text-align:center;
- align-items: center;
- overflow:hidden;
- flex-wrap: wrap;
- .pic{
- width:100%;height:100px;
- text-align:center;
- float:left;
- image{
- width:100px;
- height:100px;
- }
- }
-
- .name{
- margin-top:10px;
- width:100%;
- float:left;
- font-size:12px;
- line-height: 14px;
- max-height: 28px;
- height:28px;
- overflow: hidden;
- }
- .price{
- width:100%;
- float:left;
- color:#f21c1c;
- font-size:12px;
- }
- .buy{
- display: block;
- width: 90px;
- height: 30px;
- text-align: center;
- line-height: 30px;
- border-radius: 3px;
- margin: 5px auto 8px;
- color:#fff;
- background:#f21c1c;
- }
- .cancel{
- width:100%;
- float:left;
- color: #3caaff;
- }
- .unable{
- color:#aaa;
- }
- }
- .contrast_key2,.contrast_key3,.contrast_key4,.contrast_key5{justify-content: space-around;width:173px;text-align:center;}
-
- }
- }
- }
- </style>
|