2.vue 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <template>
  2. <!-- 样式1 -->
  3. <div class="bannerBigBox" v-if="componentStyle == 1">
  4. <div class="bannerLayerBox">
  5. <swiperStyle1 :skinId="skinId" :templateData="templateData[0].componentData.data.imgnum" />
  6. </div>
  7. <div class="NewsListBox">
  8. <div>
  9. <listStyle6 :componentStyle="templateData[0].component_style"
  10. :templateData="templateData[0].componentData.data.textnum" />
  11. </div>
  12. </div>
  13. </div>
  14. <!-- 样式2 -->
  15. <div class="bannerBigBox" v-if="componentStyle == 2">
  16. <div class="bannerLayerBox">
  17. <swiperStyle1 :skinId="skinId" :templateData="templateData[0].componentData.data.imgnum" />
  18. </div>
  19. <div class="NewsListBox">
  20. <div>
  21. <listStyle6 :componentStyle="templateData[0].component_style"
  22. :templateData="templateData[0].componentData.data.textnum" />
  23. </div>
  24. </div>
  25. </div>
  26. <!-- 样式3 -->
  27. <div class="bannerBigBox" v-if="componentStyle == 3">
  28. <div class="NewsListBox">
  29. <div>
  30. <listStyle6 :componentStyle="templateData[0].component_style"
  31. :templateData="templateData[0].componentData.data.textnum" />
  32. </div>
  33. </div>
  34. <div class="bannerLayerBox">
  35. <swiperStyle1 :skinId="skinId" :templateData="templateData[0].componentData.data.imgnum" />
  36. </div>
  37. </div>
  38. <!-- 样式4 -->
  39. <div class="bannerBigBox" v-if="componentStyle == 4">
  40. <div class="NewsListBox">
  41. <div>
  42. <listStyle6 :componentStyle="templateData[0].component_style"
  43. :templateData="templateData[0].componentData.data.textnum" />
  44. </div>
  45. </div>
  46. <div class="bannerLayerBox">
  47. <swiperStyle1 :skinId="skinId" :templateData="templateData[0].componentData.data.imgnum" />
  48. </div>
  49. </div>
  50. </template>
  51. <script setup>
  52. //轮播图组件皮肤1
  53. import swiperStyle1 from '@/components/template/component/banner/swiper/720x450/1.vue'
  54. //列表组件皮肤1
  55. import listStyle6 from '@/components/template/component/banner/list/450x405/6.vue'
  56. //暂无数据
  57. import nodata from '@/components/template/component/public/nodata.vue'
  58. const props = defineProps({
  59. skinId: Number,//皮肤id
  60. templateData: Object,//新闻数据
  61. });
  62. const componentStyle = computed(() => {
  63. return props.templateData[0].component_style
  64. })
  65. </script>
  66. <style lang="less" scoped>
  67. //基本样式 start ---------------------------------------->
  68. .bannerBigBox {
  69. width: 1200px;
  70. height: 410px;
  71. position: relative;
  72. margin: 0 auto;
  73. display: flex;
  74. justify-content: space-between;
  75. align-items: center;
  76. box-sizing: content-box;
  77. margin-bottom: 30px;
  78. .bannerLayerBox {
  79. width: 720px;
  80. height: 410px;
  81. position: relative;
  82. .templateEditBtnBox {
  83. right: 0;
  84. }
  85. }
  86. .NewsListBox {
  87. width: 450px;
  88. height: 410px;
  89. position: relative;
  90. .templateEditBtnBox {
  91. right: 0;
  92. }
  93. }
  94. }
  95. //基本样式 end ----------------------------------------></style>