MES手机端
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

187 строки
6.7 KiB

  1. <template>
  2. <view class="text_block">
  3. <template v-for="(item,index) in content">
  4. <view v-if="item.kind == 1" :key="index" :style="{backgroundImage:'linear-gradient(to top right,'+item.background[0]+','+item.background[1]+')'}" :class="[(index+1)%3==0 ? '':'marginRight','kind','kind_one','breathe-blue']">
  5. <view class="view_100" :style="{fontSize:item.content[0].size,color:item.content[0].colorvalue}">{{item.content[0].value}}</view>
  6. <view class="view_100" :style="{fontSize:item.content[1].size,color:item.content[1].colortext}">{{item.content[1].text}}</view>
  7. </view>
  8. <view v-else-if="item.kind == 2" :key="index" :class="[(index+1)%3==0 ? '':'marginRight','kind','kind_two','breathe-blue']" :style="{backgroundImage:'linear-gradient(to top right,'+item.background[0]+','+item.background+')' ,marginRight:(index+1)%3==0?'0rpx':'40rpx'}">
  9. <view v-for="(content,i) in item.content" :key="i" class="two_1">
  10. <text :style="{fontSize:content.size,color:content.colortext}">{{content.text}}:</text>
  11. <text :style="{fontSize:content.size,color:content.colorvalue}">{{content.value}}</text>
  12. </view>
  13. </view>
  14. <view v-else-if="item.kind == 3" :key="index" class="kind kind_three breathe-blue" :style="{backgroundImage:'linear-gradient(to top right,'+item.background[0]+','+item.background+')'}">
  15. <view class="view_100" :style="{fontSize:item.content[0].size,color:item.content[0].colorvalue}">{{item.content[0].value}}</view>
  16. <view class="view_100" :style="{fontSize:item.content[1].size,color:item.content[1].colortext}">{{item.content[1].text}}</view>
  17. <view class="three_3 view_100">
  18. <view v-for="(j,i) in 2" :key="i">
  19. <text :style="{fontSize:item.content[i+2].size,color:item.content[i+2].colortext}">{{item.content[i+2].text}}:</text>
  20. <text :style="{fontSize:item.content[i+2].size,color:item.content[i+2].colorvalue}">{{item.content[i+2].value}}</text>
  21. </view>
  22. </view>
  23. </view>
  24. <view v-else-if="item.kind == 4" :key="index" :class="[(index+1)%3==0 ? '':'marginRight','kind','kind_four','breathe-blue']" :style="{backgroundImage:'linear-gradient(to top right,'+item.background[0]+','+item.background[1]+')',marginRight:(index+1)%3==0?'0rpx':'40rpx'}">
  25. <view class="view_100" :style="{fontSize:item.content[0].size,color:item.content[0].colortext}">{{item.content[0].text}}</view>
  26. <view class="view_100" :style="{fontSize:item.content[1].size,color:item.content[1].colorvalue}">{{item.content[1].value}}</view>
  27. <view class="four_3" :style="{fontSize:item.content[2].size,color:item.content[2].colorvalue}">
  28. <text :style="{fontSize:item.content[3].size,color:item.content[3].colorvalue}">{{item.content[2].text}}</text>
  29. <li v-if="item.content[3].text == 'up'" class="iconfont icon-up icon" :style="{color:item.content[3].colortext}"></li>
  30. <li v-else class="iconfont icon-down icon" :style="{color:item.content[3].colortext}"></li>
  31. <text :style="{fontSize:item.content[3].size,color:item.content[3].colorvalue}">{{item.content[3].value}}</text>
  32. </view>
  33. </view>
  34. <view v-else-if="item.kind == 5" :key="index" :class="[(index+1)%3==0 ? '':'marginRight','kind','kind_five','breathe-red']" :style="{backgroundImage:'linear-gradient(to top right,'+item.background[0]+','+item.background[1]+')',marginRight:(index+1)%3==0?'0rpx':'40rpx'}">
  35. <view class="view_100" :style="{fontSize:item.content[0].size,color:item.content[0].colortext}">{{item.content[0].text}}</view>
  36. <view class="view_100" :style="{fontSize:item.content[1].size,color:item.content[1].colorvalue}">{{item.content[1].value}}</view>
  37. <view class="five_3 view_100">
  38. <view v-for="(j,i) in 2" :key="i">
  39. <text :style="{fontSize:item.content[j+2].size,color:item.content[j+2].colortext}">{{item.content[j+2].text}}</text>
  40. <text :style="{fontSize:item.content[j+2].size,color:item.content[j+2].colorvalue}">{{item.content[j+2].value}}</text>
  41. </view>
  42. </view>
  43. <view class="five_4">
  44. <text :style="{fontSize:item.content[4].size,color:item.content[4].colortext}">{{item.content[4].text}}</text>
  45. <text :style="{fontSize:item.content[4].size,color:item.content[4].colorvalue}">{{item.content[4].value}}</text>
  46. </view>
  47. </view>
  48. </template>
  49. </view>
  50. </template>
  51. <script>
  52. export default {
  53. props:{
  54. content: {
  55. type: Array,
  56. default: []
  57. },
  58. },
  59. data() {
  60. return {
  61. }
  62. },
  63. methods: {
  64. },
  65. mounted() {
  66. uni.onWindowResize((res) => {
  67. console.log('变化后的窗口宽度=' + res.size.windowWidth)
  68. console.log('变化后的窗口高度=' + res.size.windowHeight)
  69. })
  70. }
  71. }
  72. </script>
  73. <style lang="scss">
  74. .text_block{
  75. display: flex;
  76. width: 100%;
  77. flex-wrap: wrap;
  78. .marginRight{
  79. margin-right: 36rpx!important;
  80. }
  81. .view_100{
  82. width: 100%;
  83. }
  84. .CPT_DYBG {
  85. overflow: hidden;
  86. position: relative;
  87. }
  88. .kind{
  89. width: 24%;
  90. padding: 10rpx;
  91. margin-bottom: 40rpx;
  92. display: flex;
  93. justify-content: center;
  94. flex-wrap: wrap;
  95. border-radius: 16rpx;
  96. margin-left: 16rpx;
  97. box-shadow: -4px 4px 4px #ccc;
  98. position: relative;
  99. }
  100. .kind_one{
  101. border-radius: 10rpx;
  102. }
  103. .kind_two{
  104. border-radius: 10rpx;
  105. }
  106. .kind_three{
  107. border-radius: 16rpx;
  108. width: 300rpx;
  109. margin: 0 auto;
  110. .three_3{
  111. display: flex;
  112. justify-content: space-around;
  113. }
  114. }
  115. .kind_four{
  116. border-radius: 10rpx;
  117. .four_3{
  118. display: flex;
  119. li {
  120. list-style-type:none;
  121. }
  122. .icon{
  123. margin-top: -8rpx;
  124. transform: scale(0.8);
  125. }
  126. }
  127. }
  128. .kind_five{
  129. border-radius: 20rpx;
  130. .five_3{
  131. view{
  132. width: 100%;
  133. }
  134. }
  135. }
  136. }
  137. // .breathe-blue {
  138. // position:relative;
  139. // color:#fff;
  140. // text-align:center;
  141. // cursor:pointer;
  142. // box-shadow:0 1px 2px rgba(0,0,0,.3);
  143. // overflow:hidden;
  144. // -webkit-animation-timing-function:ease-in-out;
  145. // -webkit-animation-name:breatheblue;
  146. // -webkit-animation-duration:2000ms;
  147. // -webkit-animation-iteration-count:infinite;
  148. // -webkit-animation-direction:alternate;
  149. // }
  150. // @keyframes breatheblue {
  151. // 0% {
  152. // opacity:.8;
  153. // box-shadow:0 1px 2px rgba(62,178,245,0.5);
  154. // }
  155. // 100% {
  156. // opacity:1;
  157. // box-shadow:0 1px 30px rgba(147,116,247,0.6);
  158. // }
  159. // }
  160. // .breathe-red {
  161. // position:relative;
  162. // color:#fff;
  163. // text-align:center;
  164. // cursor:pointer;
  165. // box-shadow:0 1px 2px rgba(0,0,0,.3);
  166. // overflow:hidden;
  167. // -webkit-animation-timing-function:ease-in-out;
  168. // -webkit-animation-name:breathered;
  169. // -webkit-animation-duration:2000ms;
  170. // -webkit-animation-iteration-count:infinite;
  171. // -webkit-animation-direction:alternate;
  172. // }
  173. // @keyframes breathered {
  174. // 0% {
  175. // opacity:.8;
  176. // box-shadow:0 1px 2px rgba(247,126,137,0.5);
  177. // }
  178. // 100% {
  179. // opacity:1;
  180. // box-shadow:0 1px 30px rgba(247,149,59,0.9);
  181. // }
  182. // }
  183. </style>