interest.vue 1.9 KB
Newer Older
番红炒西茄柿's avatar
asdvca  
番红炒西茄柿 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85
<template>
  <!--  -->
  <div class="force">
    <div class="user-rank-list">
      <RankList title="用户原力月榜" @clear="clear" :dropdownList="dropdownList" listTitle="原力值"
                @dropdownFn="dropdownFn" :city="city" :rankData="rankData"/>
    </div>
  </div>
</template>
<script>
import ForceMap from './mapForce.vue'
import RankList from "./rankList.vue";
import {getForceInfo} from '@/server/screen-data'

export default {
  data() {
    return {
      optionList: [],
      rankData: [],
      rankList: [],
      city: '全国',
      dropdownList: [],
      mapStyle: {
        width: '1000',
        height: '900',
        tooltip: true,
        zoom: 1.5
      },
    }
  },
  methods: {
    dropdownFn(val) {
      this.city = val
      this.rankData = this.optionList.find(it => it.city == val).list
    },
    clear() {
      this.rankData = this.rankList
      this.city = '全国'
    },
    getlist() {
      getForceInfo().then((res) => {
        if (res.status == 200) {
          this.optionList = res.data.data.cityInfoList
          this.rankData = res.data.data.countryTop
          this.rankList = res.data.data.countryTop
          this.dropdownList = res.data.data.cityInfoList.map(it => it.city)
        }
      }).catch(() => {

      })
    },
    setrankList(data) {
      this.rankData = data.list
      this.city = data.city
    }
  },
  created() {
    this.mapStyle.width = document.documentElement.clientWidth
    this.mapStyle.height = document.documentElement.clientHeight - 66
    console.log("cnmcnmcnmcnm")
  },
  mounted() {
    this.getlist()
    console.log("mounted")
  },
  components: {
    ForceMap,
    RankList
  },
}
</script>
<style scoped lang="scss">
.force {
  width: 100%;
  display: flex;
  justify-content: space-between;
  position: relative;

  .user-rank-list {
    top: 40px;
    position: absolute;
    right: 40px;
  }
}
</style>