49eed9e589f98acba5286c716e24c67b28956896.svn-base 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. <template>
  2. <div class="basketball">
  3. <div v-if="basketball.length == 0" class="no-message">暂无数据</div>
  4. <div v-for="(item, index) of basketball" :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 == 4">
  9. <el-table style="width:600px;margin:0 auto"
  10. :data="[].concat(props.row.play_data[2]).concat(props.row.play_data[3])">
  11. <el-table-column label="球队" prop="team_name" width="200"></el-table-column>
  12. <el-table-column label="第一节" prop="sc_1th"></el-table-column>
  13. <el-table-column label="第二节" prop="sc_2th"></el-table-column>
  14. <el-table-column label="第三节" prop="sc_3th"></el-table-column>
  15. <el-table-column label="第四节" prop="sc_4th"></el-table-column>
  16. <el-table-column label="加时" prop="sc_other"></el-table-column>
  17. </el-table>
  18. <div style="padding: 8px 8px;margin: 0 auto">
  19. <span style="font-weight:bold;">猜分:</span>
  20. <span style="display:inline-block;margin-right: 20px;">{{props.row.play_data[0].play_name}}:{{props.row.play_data[0].play_result}}</span>
  21. <span>{{props.row.play_data[1].play_name}}:{{props.row.play_data[1].play_result}}</span>
  22. </div>
  23. </div>
  24. <div v-else style="text-align:center">暂无数据</div>
  25. </template>
  26. </el-table-column>
  27. <el-table-column :label="item.league_name" width="400" align="center" style="border-left:none">
  28. <template slot-scope="scope">
  29. {{scope.row.match_time}}
  30. <span style="width: 400px;font-weight:bold">
  31. {{scope.row.home_team}}
  32. <span style="color: #ff9200">VS</span>
  33. {{scope.row.guest_team}}
  34. </span>
  35. </template>
  36. </el-table-column>
  37. <el-table-column label="上半场" align="center" prop="score_half"></el-table-column>
  38. <el-table-column label="下半场" align="center" prop="score_below"></el-table-column>
  39. <el-table-column label="赛果" align="center" prop="score_result"></el-table-column>
  40. </el-table>
  41. </div>
  42. </div>
  43. </template>
  44. <script>
  45. export default {
  46. name: 'basketball',
  47. props: {
  48. basketballData: {
  49. type: Array,
  50. default: ()=>[]
  51. },
  52. loading: {
  53. type: Boolean,
  54. default: false
  55. }
  56. },
  57. data() {
  58. return {
  59. basketball: [],
  60. BtLoading: false,
  61. show: true,
  62. test: '1'
  63. }
  64. },
  65. watch: {
  66. basketballData: {
  67. handler(val) {
  68. if(val) {
  69. this.basketball = JSON.parse(JSON.stringify(val))
  70. }
  71. },
  72. deep: true
  73. },
  74. loading(val) {
  75. this.BtLoading = val
  76. }
  77. },
  78. methods: {
  79. // 默认展开
  80. initShow() {
  81. for(let item of this.basketball) {
  82. item.show = !item.show;
  83. }
  84. },
  85. setShow(val, index) {
  86. val.show = !val.show
  87. },
  88. }
  89. }
  90. </script>
  91. <style>
  92. .basketball .el-table {
  93. border-top: none;
  94. }
  95. .basketball .el-table th {
  96. padding: 8px 0;
  97. background-color: #373737;
  98. color: #ffffff;
  99. font-size: 14px;
  100. font-weight: 700;
  101. }
  102. .basketball .sec-table .el-table th {
  103. padding: 4px 0;
  104. background-color: #e3e3e3;
  105. color: #ffffff;
  106. font-size: 14px;
  107. font-weight: 500;
  108. }
  109. .basketball .el-table td {
  110. padding: 6px 0;
  111. }
  112. .basketball .el-table--border th {
  113. border: none;
  114. }
  115. </style>
  116. <style scoped>
  117. /* /deep/ .el-table td, .el-table th {
  118. padding: 6px 0;
  119. } */
  120. .game-grid {
  121. box-sizing: border-box;
  122. width: 800px;
  123. border: solid 1px #e3e3e3;
  124. border-top: none;
  125. border-collapse: collapse;
  126. }
  127. .game-grid-head {
  128. position: relative;
  129. width: 100%;
  130. height: 40px;
  131. line-height: 40px;
  132. background-color: #373737;
  133. color: #ffffff;
  134. font-size: 14px;
  135. font-weight: 700;
  136. text-align: center;
  137. }
  138. .img-size {
  139. position: absolute;
  140. height: 10px;
  141. width: 10px;
  142. top: 15px;
  143. left: 10px;
  144. }
  145. .game-grid-one {
  146. display:table-cell;
  147. vertical-align: middle;
  148. text-align: center;
  149. font-size: 13px;
  150. border-collapse: collapse;
  151. }
  152. .game-grid-cell {
  153. display:table-cell;
  154. vertical-align: middle;
  155. text-align: center;
  156. font-size: 13px;
  157. border-collapse: collapse;
  158. padding: 6px 0;
  159. /* border-right: 1px solid #d7d7d7; */
  160. border: 1px solid #d7d7d7;
  161. border-top: none;
  162. }
  163. .no-message {
  164. text-align: center;
  165. margin-top: 50px;
  166. padding-right: 100px;
  167. font-size: 16px;
  168. font-weight: 700;
  169. }
  170. </style>
  171. <style scoped>
  172. .no-message {
  173. text-align: center;
  174. margin-top: 50px;
  175. padding-right: 100px;
  176. font-size: 16px;
  177. font-weight: 700;
  178. }
  179. </style>