import { getCataLogTagList, getZhongTaiRealcasePage, actionDo } from '../../api/index' Component({ /** * 组件的属性列表 */ properties: { menuButtonInfo: Object }, data: { activeIndex: -1, activeParam: [], selParam: '', tagCodes: [], isLoading:false, cateList: [], dataList: [], pageNum: 1, pageSize: 10, query: '', sortType: 'NORMAL', catalogCode: 'real_case' }, attached() { this.getCatelist() }, methods: { getCatelist(){ const { catalogCode } = this.data getCataLogTagList({ catalogCode }).then(res => { if(res.data && res.data.length > 0){ this.setData({ cateList: res.data }) setTimeout(() => { this.getList() }, 300) } }) }, getList() { if(this.data.isLoading){ return } this.setData({isLoading:true}) const { sortType, query, tagCodes, pageNum, pageSize,catalogCode } = this.data getZhongTaiRealcasePage({ catalogCode,tagCodes,pageNum,pageSize, sortType,query }).then(res => { this.setData({ dataList: [...this.data.dataList, ...res.data.records], total: res.data.total, }) }).finally(()=>{ this.setData({isLoading:false}) }) }, scrolltolower() { console.log('触底事件'); const { total, dataList, pageNum } = this.data if(total > dataList.length){ this.setData({ pageNum: pageNum + 1 }) this.getList() }else{ wx.showToast({ title: '暂无更多数据', icon: 'none' }) } }, videoClick(e) { const { videourl } = e.currentTarget.dataset wx.previewMedia({ sources: [{ url: videourl, type: 'video' }] }) }, priviewFull(e){ const item = e.currentTarget.dataset.item console.log('item', item); wx.navigateTo({ url: '/pages/webView/index', success: function(res) { // 通过eventChannel向被打开页面传送数据 res.eventChannel.emit('data',{link:item.openContent} ); } }) }, statusChange(e) { const sortType = e.currentTarget.dataset.status this.setData({sortType}) this.setData({ pageNum: 1,dataList: [],total: 0}) this.getList() }, handleAction(e){ const actionType = e.currentTarget.dataset.code const id = e.currentTarget.dataset.id actionDo({ actionType, id }).then(res => { this.getList() }) }, handleDetail(e) { const item = e.currentTarget.dataset.item console.log('item', item); if(item.openType == 'video'){ wx.previewMedia({ sources: [{ url: item.openContent, type: 'video' }] }) } if(item.openType == 'link'){ wx.navigateTo({ url: '/pages/webView/index', success: function(res) { // 通过eventChannel向被打开页面传送数据 res.eventChannel.emit('data',{link:item.openContent} ); } }) } if(item.openType == 'page'){ wx.navigateTo({ url: '/pages/detailDis/realpic?id=' + item.id, }) } }, tagClick(e) { if(this.data.isLoading){ return } const code = e.currentTarget.dataset.code const paramIndex = e.currentTarget.dataset.index const { cateList, tagCodes, activeParam, activeIndex } = this.data const index = tagCodes.indexOf(code) if(index === -1){ // if(activeParam && activeParam.length > 0){ // activeParam.forEach(item => { // const indexTemp = tagCodes.indexOf(item.labelValueCode) // if(indexTemp > -1){ // tagCodes.splice(indexTemp, 1) // } // }) // } // tagCodes.push(code) cateList[activeIndex].tempParamIndex = paramIndex cateList[activeIndex].tempParamName = activeParam[paramIndex].labelValueName cateList[activeIndex].tempParamCode = code }else{ cateList[activeIndex].tempParamIndex = -1 cateList[activeIndex].tempParamName = null cateList[activeIndex].tempParamCode = null } this.setData({ cateList }) }, cancelParam() { const { cateList } = this.data cateList.forEach(item => { item.tempParamIndex = item.paramIndex item.tempParamName = item.paramName item.tempParamCode = item.paramCode }) this.setData({ activeParam: [],cateList,activeIndex: -1 }) }, bindblur() { this.setData({ pageNum: 1,dataList: [],total: 0}) this.getList() }, subParam() { const { cateList } = this.data var codes =[] cateList.forEach(item => { item.paramIndex = item.tempParamIndex item.paramName = item.tempParamName item.paramCode = item.tempParamCode if(item.tempParamIndex >-1 && item.tempParamCode){ codes.push(item.tempParamCode) } }) this.setData({ activeParam: [],tagCodes:codes }) this.setData({ pageNum: 1,activeIndex: -1,dataList: [],total: 0}) this.getList() }, changeShowParams(e){ const { cateList } = this.data const activeIndex = e.currentTarget.dataset.index if(activeIndex === this.data.activeIndex){ this.setData({ activeIndex: -1, activeParam: [], selParam: '' }) }else{ this.setData({ activeIndex, activeParam: cateList[activeIndex].valueVos }) } // this.setData({showTwo: false}) }, changeTwo(){ const showTwo = !this.data.showTwo this.setData({showTwo}) this.setData({showOne: false}) }, } })