| | |
| | | } |
| | | } |
| | | .goods_list{ |
| | | height: calc( 100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | height: calc( 100% - 188rpx); |
| | | .empty{ |
| | | height: 100rpx; |
| | | } |
| | |
| | | background-color: #333333; |
| | | } |
| | | .main_content .goods_list { |
| | | height: calc(100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | height: calc(100% - 188rpx); |
| | | } |
| | | .main_content .goods_list .empty { |
| | | height: 100rpx; |
| | |
| | | } |
| | | } |
| | | .goods_list { |
| | | height: calc( 100% - 182rpx); |
| | | height: calc( 100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | |
| | | background-color: #333333; |
| | | } |
| | | .main_content .main_right .goods_list { |
| | | height: calc(100% - 182rpx); |
| | | height: calc(100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | |
| | | } |
| | | |
| | | .goods_list { |
| | | padding: 12rpx 40rpx; |
| | | height: calc( 100% - 188rpx); |
| | | height: calc( 100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | .empty{ |
| | | height: 100rpx; |
| | | } |
| | |
| | | background-color: #333333; |
| | | } |
| | | .main_content .goods_list { |
| | | padding: 12rpx 40rpx; |
| | | height: calc(100% - 188rpx); |
| | | height: calc(100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | } |
| | | .main_content .goods_list .empty { |
| | | height: 100rpx; |
| | |
| | | align-items: center; |
| | | margin-left: 0; |
| | | .item { |
| | | padding: 0 40rpx; |
| | | padding: 0 20rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 24rpx; |
| | | font-size: 26rpx; |
| | | color: #333333; |
| | | height: 60rpx; |
| | | height: 68rpx; |
| | | margin-right: 24rpx; |
| | | line-height: 68rpx; |
| | | background: #F7F7F7; |
| | | border-radius: 8rpx; |
| | | margin-right: 24rpx; |
| | | } |
| | | .active{ |
| | | color: var(--themeColor); |
| | | background: rgba(176, 135, 113, 0.08); |
| | | font-size: 24rpx; |
| | | font-weight: 400; |
| | | color: #B08771; |
| | | } |
| | | } |
| | | .content{ |
| | |
| | | margin-left: 0; |
| | | } |
| | | .second_list .item { |
| | | padding: 0 40rpx; |
| | | padding: 0 20rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 24rpx; |
| | | font-size: 26rpx; |
| | | color: #333333; |
| | | height: 60rpx; |
| | | height: 68rpx; |
| | | line-height: 68rpx; |
| | | background: #F7F7F7; |
| | | border-radius: 8rpx; |
| | | margin-right: 24rpx; |
| | | } |
| | | .second_list .active { |
| | | color: var(--themeColor); |
| | | background: rgba(176, 135, 113, 0.08); |
| | | font-size: 24rpx; |
| | | font-weight: 400; |
| | | color: #B08771; |
| | | } |
| | | .content { |
| | | padding: 0rpx 40rpx 40rpx; |
| | |
| | | import { actionDo, getProductNewsInfo } from '../../api/index' |
| | | import { actionDo, getProductNewsInfo, getMemberInfo } from '../../api/index' |
| | | Page({ |
| | | |
| | | /** |
| | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoadLogin(options) { |
| | | this.getDetail(options.id, options.userId || '') |
| | | }, |
| | | onLoad(options) { |
| | | var app = getApp().globalData |
| | | this.setData({ |
| | |
| | | if(options.origin && options.origin == 'b'){ |
| | | this.setData({ origin: 'b' }) |
| | | } |
| | | this.getDetail(options.id, options.userId || '') |
| | | // this.getDetail(options.id, options.userId || '') |
| | | }, |
| | | handleDesign() { |
| | | wx.navigateTo({ |
| | |
| | | wx.setNavigationBarTitle({ |
| | | title: res.data.title |
| | | }) |
| | | if (userId) { |
| | | getMemberInfo().then(res => { |
| | | this.setData({ |
| | | member: res.data |
| | | }) |
| | | wx.setStorageSync('member', res.data) |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | openShare() { |
| | |
| | | { |
| | | "usingComponents": { |
| | | "van-popup": "@vant/weapp/popup/index", |
| | | "idCard": "../../components/idCard/index", |
| | | "mp-html": "mp-html" |
| | | }, |
| | | "navigationBarTitleText": "" |
| | |
| | | }, |
| | | onPageScroll(e) { |
| | | const { videoTop, windowHeight, videoPlay } = this.data |
| | | if(e.scrollTop - 100 > videoTop - (windowHeight / 2) && videoPlay ){ |
| | | if(e.scrollTop + 100 > videoTop - (windowHeight / 2) && videoPlay ){ |
| | | this.setData({ videoPlay: false }) |
| | | let videoplay = wx.createVideoContext('myvideo', this) |
| | | videoplay.play(); |
| | | } |
| | | |
| | | let scrollTop = e.scrollTop / 100 |
| | | if (scrollTop <= 0.1) { |
| | | this.setData({ |
| | |
| | | </view> |
| | | <image class="ar_right" src="../../static/icon/home_ar@2x.png"></image> |
| | | </view> |
| | | <video poster="{{ productVideo[0].coverImage }}" bindplay="bindVideoPlay" id="myvideo" src="{{ productVideo[0].videoUrl }}" show-fullscreen-btn></video> |
| | | <video poster="{{ productVideo[0].coverImage }}" bindplay="bindVideoPlay" id="myvideo" muted src="{{ productVideo[0].videoUrl }}" show-fullscreen-btn></video> |
| | | <!-- <view bindtap="videoClick" data-id="{{ productVideo[0].id }}" data-videourl="{{ productVideo[0].videoUrl }}" class="video_wrap"> |
| | | <image class="img" src="{{ productVideo[0].coverImage }}" mode="aspectFill"></image> |
| | | <image class="play" src="../../static/icon/ic_play.png"></image> |
| | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoadLogin(options) { |
| | | this.getDetail(options.id) |
| | | }, |
| | | onLoad(options) { |
| | | var app = getApp().globalData |
| | | this.setData({ |
| | | bottomLift: app.bottomLift |
| | | }) |
| | | if(options && options.id){ |
| | | this.getDetail(options.id) |
| | | } |
| | | }, |
| | | toSever () { |
| | | console.log('客服'); |
| | |
| | | * 页面的初始数据 |
| | | */ |
| | | data: { |
| | | acVid: '', |
| | | viewIdList: [], |
| | | |
| | | videoContext:null, |
| | | category: [], |
| | | tagCodes: '', |
| | |
| | | }) |
| | | }, |
| | | itemClick(e) { |
| | | const { id} = e.currentTarget.dataset.item |
| | | const { dataList } = this.data |
| | | const { id } = e.currentTarget.dataset.item |
| | | const { dataList, acVid, viewIdList } = this.data |
| | | const index = viewIdList.findIndex(i => i === id) |
| | | if(acVid){ |
| | | if(id != acVid){ |
| | | wx.createVideoContext(acVid).pause() |
| | | wx.createVideoContext(id).play() |
| | | this.setData({ acVid: id }) |
| | | } |
| | | }else{ |
| | | this.setData({ acVid: id }) |
| | | wx.createVideoContext(id).play() |
| | | } |
| | | dataList.forEach(ite => { |
| | | if(id === ite.id){ |
| | | if(id === ite.id && index === -1){ |
| | | ite.viewCount += 1 |
| | | viewIdList.push(id) |
| | | actionDo({ |
| | | actionType: 'view', |
| | | id: id |
| | | }) |
| | | this.setData({ viewIdList }) |
| | | } |
| | | }) |
| | | this.setData({ dataList }) |
| | | actionDo({ |
| | | actionType: 'view', |
| | | id: id |
| | | }) |
| | | // let videoPlay = this.selectComponent('.videoPlay'); |
| | | // if(videoPlay){ |
| | | // videoPlay.startPlayVideo(videourl,this ); |
| | | // } |
| | | // this.startPlayVideo(videourl) |
| | | // wx.previewMedia({ |
| | | // sources: [{ url: videourl, type: 'video' }] |
| | | // }) |
| | | }, |
| | | cateClick(e) { |
| | | const { code } = e.target.dataset |
| | |
| | | .item{ |
| | | margin-bottom: 60rpx; |
| | | position: relative; |
| | | video{ |
| | | border-radius: 8rpx; |
| | | } |
| | | .play{ |
| | | width: 60rpx; |
| | | position: absolute; |
| | |
| | | <image class="img" src="{{ item.coverImage }}" mode="aspectFill"></image> |
| | | <image class="play" src="../../static/icon/ic_play.png" mode="widthFix"></image> |
| | | </view> --> |
| | | <video poster="{{ item.coverImage }}" data-item="{{ item }}" bindplay="itemClick" class="img_wrap" src="{{ item.videoUrl }}" show-center-play-btn show-fullscreen-btn></video> |
| | | <video id="{{item.id}}" poster="{{ item.coverImage }}" data-item="{{ item }}" bindplay="itemClick" class="img_wrap" src="{{ item.videoUrl }}" show-center-play-btn show-fullscreen-btn></video> |
| | | |
| | | <view class="title">{{ item.title }}</view> |
| | | <view class="df_sb static"> |
| | |
| | | margin-bottom: 60rpx; |
| | | position: relative; |
| | | } |
| | | .content .item video { |
| | | border-radius: 8rpx; |
| | | } |
| | | .content .item .play { |
| | | width: 60rpx; |
| | | position: absolute; |
| | |
| | | |
| | | |
| | | |
| | | export const baseUrl = 'http://192.168.0.135:10027' // 本地 |
| | | // export const baseUrl = 'http://192.168.0.135:10027' // 本地 |
| | | // export const baseUrl = 'https://dmtest.ahapp.net/web_interface' //测试服务器 |
| | | |
| | | // export const baseUrl = 'https://dmdev.zhibang.com:8443/web_interface' |
| | | export const baseUrl = 'https://dmdev.zhibang.com:8443/web_interface' |
| | | |
| | | // 腾讯地图开发者 key |
| | | export const qqMapKey = 'HIDBZ-2QXL4-TAWUD-XET6Q-EKTJE-CCBSQ' |
| | |
| | | } |
| | | } |
| | | .goods_list{ |
| | | height: calc( 100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | height: calc( 100% - 188rpx); |
| | | .empty{ |
| | | height: 100rpx; |
| | | } |
| | |
| | | background-color: #333333; |
| | | } |
| | | .main_content .goods_list { |
| | | height: calc(100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | height: calc(100% - 188rpx); |
| | | } |
| | | .main_content .goods_list .empty { |
| | | height: 100rpx; |
| | |
| | | } |
| | | |
| | | .goods_list { |
| | | height: calc( 100% - 182rpx); |
| | | height: calc( 100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | |
| | | background-color: #333333; |
| | | } |
| | | .main_content .main_right .goods_list { |
| | | height: calc(100% - 182rpx); |
| | | height: calc(100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | |
| | | } |
| | | |
| | | .goods_list { |
| | | padding: 12rpx 40rpx; |
| | | height: calc( 100% - 188rpx); |
| | | height: calc( 100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | .empty{ |
| | | height: 100rpx; |
| | | } |
| | |
| | | background-color: #333333; |
| | | } |
| | | .main_content .goods_list { |
| | | padding: 12rpx 40rpx; |
| | | height: calc(100% - 188rpx); |
| | | height: calc(100% - 222rpx); |
| | | width: 590rpx; |
| | | box-sizing: border-box; |
| | | padding: 12rpx 40rpx; |
| | | } |
| | | .main_content .goods_list .empty { |
| | | height: 100rpx; |
| | |
| | | |
| | | .active { |
| | | color: #222222; |
| | | font-weight: 500; |
| | | font-weight: 600; |
| | | font-size: 30rpx; |
| | | } |
| | | } |
| | |
| | | align-items: center; |
| | | margin-left: 0; |
| | | .item { |
| | | padding: 0 40rpx; |
| | | padding: 0 20rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 24rpx; |
| | | font-size: 26rpx; |
| | | color: #333333; |
| | | height: 60rpx; |
| | | height: 68rpx; |
| | | margin-right: 24rpx; |
| | | line-height: 68rpx; |
| | | background: #F7F7F7; |
| | | border-radius: 8rpx; |
| | | margin-right: 24rpx; |
| | |
| | | .active{ |
| | | color: var(--themeColor); |
| | | background: rgba(176, 135, 113, 0.08); |
| | | font-size: 24rpx; |
| | | font-size: 26rpx; |
| | | font-weight: 400; |
| | | } |
| | | } |
| | |
| | | } |
| | | .scroll_cate .active { |
| | | color: #222222; |
| | | font-weight: 500; |
| | | font-weight: 600; |
| | | font-size: 30rpx; |
| | | } |
| | | .second_list { |
| | |
| | | margin-left: 0; |
| | | } |
| | | .second_list .item { |
| | | padding: 0 40rpx; |
| | | padding: 0 20rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 24rpx; |
| | | font-size: 26rpx; |
| | | color: #333333; |
| | | height: 60rpx; |
| | | height: 68rpx; |
| | | line-height: 68rpx; |
| | | background: #F7F7F7; |
| | | border-radius: 8rpx; |
| | | margin-right: 24rpx; |
| | |
| | | .second_list .active { |
| | | color: var(--themeColor); |
| | | background: rgba(176, 135, 113, 0.08); |
| | | font-size: 24rpx; |
| | | font-size: 26rpx; |
| | | font-weight: 400; |
| | | } |
| | | .content { |
| | |
| | | }, |
| | | onPageScroll(e) { |
| | | const { videoTop, windowHeight, videoPlay } = this.data |
| | | if(e.scrollTop > videoTop - (windowHeight / 2) && videoPlay ){ |
| | | if(e.scrollTop + 60 > videoTop - (windowHeight / 2) && videoPlay ){ |
| | | this.setData({ videoPlay: false }) |
| | | let videoplay = wx.createVideoContext('myvideo', this) |
| | | videoplay.play(); |
| | |
| | | </view> |
| | | <image class="ar_right" src="../../static/icon/home_ar@2x.png"></image> |
| | | </view> |
| | | <video bindplay="bindVideoPlay" id="myvideo" src="{{ productVideo[0].videoUrl }}" show-fullscreen-btn></video> |
| | | <video muted bindplay="bindVideoPlay" id="myvideo" src="{{ productVideo[0].videoUrl }}" show-fullscreen-btn></video> |
| | | <!-- <view bindtap="videoClick" data-videourl="{{ productVideo[0].videoUrl }}" class="video_wrap"> |
| | | <image class="img" src="{{ productVideo[0].coverImage }}" mode="aspectFill"></image> |
| | | <image class="play" src="../../static/icon/ic_play.png" mode="widthFix"></image> |
| | |
| | | } |
| | | }, |
| | | handleShare() { |
| | | const { info } = this.data |
| | | wx.navigateToMiniProgram({ |
| | | appId: 'wxcd2b89fd2ff065f8', |
| | | path: `/pages/kefu/index`, |
| | | path: `/pages/kefu/index?title=专属客服&id=${info.id}`, |
| | | envVersion: 'trial' |
| | | }) |
| | | }, |
| | |
| | | data: { |
| | | category: [], |
| | | tagCodes: '', |
| | | acVid:'', |
| | | viewIdList: [], |
| | | |
| | | dataList: [], |
| | | total: 0, |
| | |
| | | }, |
| | | itemClick(e) { |
| | | const { id } = e.currentTarget.dataset.item |
| | | const { dataList } = this.data |
| | | const { dataList, acVid, viewIdList } = this.data |
| | | const index = viewIdList.findIndex(i => i === id) |
| | | if(acVid){ |
| | | if(id != acVid){ |
| | | wx.createVideoContext(acVid).pause() |
| | | wx.createVideoContext(id).play() |
| | | this.setData({ acVid: id }) |
| | | } |
| | | }else{ |
| | | this.setData({ acVid: id }) |
| | | wx.createVideoContext(id).play() |
| | | } |
| | | dataList.forEach(ite => { |
| | | if(id === ite.id){ |
| | | if(id === ite.id && index === -1){ |
| | | ite.viewCount += 1 |
| | | viewIdList.push(id) |
| | | actionDo({ |
| | | actionType: 'view', |
| | | id: id |
| | | }) |
| | | this.setData({ viewIdList }) |
| | | } |
| | | }) |
| | | this.setData({ dataList }) |
| | | actionDo({ |
| | | actionType: 'view', |
| | | id: id |
| | | }) |
| | | }, |
| | | cateClick(e) { |
| | | const { code } = e.target.dataset |
| | |
| | | color: #111111; |
| | | margin: 24rpx 0 12rpx; |
| | | } |
| | | video{ |
| | | border-radius: 8rpx; |
| | | } |
| | | .static{ |
| | | font-size: 24rpx; |
| | | color: #999999; |
| | |
| | | <image class="img" src="{{ item.coverImage }}" mode="widthFix"></image> |
| | | <image class="play" src="../../static/icon/ic_play.png" mode="widthFix"></image> |
| | | </view> --> |
| | | <video poster="{{ item.coverImage }}" data-item="{{ item }}" bindplay="itemClick" class="img_wrap" src="{{ item.videoUrl }}" show-center-play-btn show-fullscreen-btn></video> |
| | | <video id="{{ item.id }}" poster="{{ item.coverImage }}" data-item="{{ item }}" bindplay="itemClick" class="img_wrap" src="{{ item.videoUrl }}" show-center-play-btn show-fullscreen-btn></video> |
| | | |
| | | <view class="title">{{ item.title }}</view> |
| | | <view class="df_sb static"> |
| | |
| | | color: #111111; |
| | | margin: 24rpx 0 12rpx; |
| | | } |
| | | .content .item video { |
| | | border-radius: 8rpx; |
| | | } |
| | | .content .item .static { |
| | | font-size: 24rpx; |
| | | color: #999999; |
| | |
| | | }, |
| | | { |
| | | "name": "", |
| | | "pathName": "pages/detailDis/product", |
| | | "pathName": "pages/productVideo/index", |
| | | "query": "id=1813372914895843329", |
| | | "launchMode": "default", |
| | | "scene": null |