speaker.vue 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <template name="dever-speaker">
  2. <view class="grace-swiper-msg">
  3. <view class="grace-swiper-msg-icon" :class="[iconClass]" :style="{color:iconColor}"></view>
  4. <swiper :display-multiple-items="display" :vertical="vertical" autoplay="true" circular="true" :interval="interval" :style="{height:height}">
  5. <swiper-item v-for="(item, index) in msgs" :key="index" :style="{height:height}">
  6. <view class="grace-space-between grace-flex-vcenter margin-bottom-xs">
  7. <view>
  8. <text class="grace-icons icon-arrow-right text-sblue"></text>
  9. <text class="text-sm">{{item.name}}</text>
  10. </view>
  11. <view class="text-sm text-gray">{{item.date}}</view>
  12. </view>
  13. </swiper-item>
  14. </swiper>
  15. </view>
  16. </template>
  17. <script>
  18. export default {
  19. name: "dever-speaker",
  20. props: {
  21. msgs : {
  22. type : Array,
  23. default : function(){return [];}
  24. },
  25. iconClass : {
  26. type : String,
  27. default : ""
  28. },
  29. iconColor : {
  30. type : String,
  31. default : "#3688FF"
  32. },
  33. interval : {
  34. type : Number,
  35. default: 3000
  36. },
  37. vertical : {
  38. type : Boolean,
  39. default : true
  40. },
  41. fontSize : {
  42. type : String,
  43. default : "26rpx"
  44. },
  45. fontColor : {
  46. type : String,
  47. default : "#333333"
  48. },
  49. fontWeight : {
  50. type : String,
  51. default : ""
  52. },
  53. height:{
  54. type : String,
  55. default : "60rpx"
  56. },
  57. display:{
  58. type : Number,
  59. default: 1
  60. }
  61. }
  62. }
  63. </script>
  64. <style scoped>
  65. .grace-swiper-msg{width:100%; display:flex; flex-wrap:nowrap; align-items:center;}
  66. .grace-swiper-msg-icon{margin-right:16rpx; display:inline-block; flex-shrink:0;}
  67. .grace-swiper-msg swiper{width:100%; height:60rpx; overflow:hidden;}
  68. .grace-swiper-msg swiper-item{overflow:hidden;}
  69. .grace-swiper-msg navigator{line-height:60rpx; overflow:hidden;}
  70. </style>