c0655168de44cec02ec9e39caa025f01506cccf1.svn-base 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. <template>
  2. <div class="football">
  3. <div v-if="football.length == 0" class="no-message">暂无数据</div>
  4. <div v-for="(item, index) of football" :key="index">
  5. <el-table :data="item.match_data">
  6. <el-table-column type="expand" style="border: none">
  7. <template slot-scope="props">
  8. <div v-if="props.row.play_data.length > 2">
  9. <!-- <el-table style="width:700px;margin:0 auto"
  10. :data="[].concat(props.row.play_data[props.row.play_data.length-1])
  11. .concat(props.row.play_data[props.row.play_data.length-2])">
  12. <el-table-column label="队员" prop="team_name" width="140"></el-table-column>
  13. <el-table-column label="第一盘" prop="sc_1th"></el-table-column>
  14. <el-table-column label="第二盘" prop="sc_2th"></el-table-column>
  15. <el-table-column label="第三盘" prop="sc_3th"></el-table-column>
  16. <el-table-column label="第四盘" prop="sc_4th"></el-table-column>
  17. <el-table-column label="第五盘" prop="sc_5th"></el-table-column>
  18. <el-table-column label="局" prop="game_num"></el-table-column>
  19. <el-table-column label="盘" prop="disc_num"></el-table-column>
  20. </el-table> -->
  21. <div style="padding: 8px 8px;margin: 0 auto">
  22. <div style="font-weight:bold;">结果:</div>
  23. <div style="margin-left: 40px;line-height: 28px;" v-for="(res, index) of props.row.play_data" :key="index">
  24. <div v-if="index < props.row.play_data.length -2">{{res.play_name}}:{{res.play_result}}</div>
  25. </div>
  26. </div>
  27. </div>
  28. <div v-else style="text-align:center">暂无数据</div>
  29. </template>
  30. </el-table-column>
  31. <el-table-column :label="item.league_name" width="400" align="center" style="border-left:none">
  32. <template slot-scope="scope">
  33. {{scope.row.match_time}}
  34. <span style="width: 400px;font-weight:bold">
  35. {{scope.row.home_team}}
  36. <span style="color: #ff9200">VS</span>
  37. {{scope.row.guest_team}}
  38. </span>
  39. </template>
  40. </el-table-column>
  41. <el-table-column label="上半场" align="center" prop="score_half"></el-table-column>
  42. <el-table-column label="赛果" align="center" prop="score_full"></el-table-column>
  43. </el-table>
  44. </div>
  45. </div>
  46. </template>
  47. <script>
  48. export default {
  49. name: 'football',
  50. props: {
  51. footballData: {
  52. type: Array,
  53. default: ()=>[]
  54. },
  55. loading: {
  56. type: Boolean,
  57. default: false
  58. }
  59. },
  60. data() {
  61. return {
  62. football: [],
  63. ftLoading: false,
  64. show: true,
  65. test: '1'
  66. }
  67. },
  68. watch: {
  69. footballData: {
  70. handler(val) {
  71. if(val) {
  72. this.football = JSON.parse(JSON.stringify(val))
  73. }
  74. },
  75. deep: true
  76. },
  77. loading(val) {
  78. this.ftLoading = val
  79. }
  80. },
  81. methods: {
  82. // 默认展开
  83. initShow() {
  84. for(let item of this.football) {
  85. item.show = !item.show;
  86. }
  87. },
  88. setShow(val, index) {
  89. val.show = !val.show
  90. },
  91. }
  92. }
  93. </script>
  94. <style>
  95. .football .el-table {
  96. border-top: none;
  97. }
  98. .football .el-table th {
  99. padding: 8px 0;
  100. background-color: #373737;
  101. color: #ffffff;
  102. font-size: 14px;
  103. font-weight: 700;
  104. }
  105. .football .sec-table .el-table th {
  106. padding: 4px 0;
  107. background-color: #e3e3e3;
  108. color: #ffffff;
  109. font-size: 14px;
  110. font-weight: 500;
  111. }
  112. .football .el-table td {
  113. padding: 6px 0;
  114. }
  115. .football .el-table--border th {
  116. border: none;
  117. }
  118. </style>
  119. <style scoped>
  120. .no-message {
  121. text-align: center;
  122. margin-top: 50px;
  123. padding-right: 100px;
  124. font-size: 16px;
  125. font-weight: 700;
  126. }
  127. </style>