1.vue 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <template>
  2. <div class="imgNewsBigBox">
  3. <div v-if="templateData.componentList[0].component_style == 1">
  4. <news1Style
  5. v-if="templateData.componentList[0].data.text.length > 0"
  6. :titleLink="componentTitle1"
  7. :templateData="templateData.componentList[0].data"
  8. :skinId="skinId"
  9. />
  10. <nodata v-else :dataStyle="2" :dataWidth="720" :dataHeight="440" />
  11. </div>
  12. <div v-if="templateData.componentList[0].component_style == 2">
  13. <news2Style
  14. v-if="templateData.componentList[0].data.text.length > 0"
  15. :titleLink="componentTitle1"
  16. :templateData="templateData.componentList[0].data"
  17. :skinId="skinId"
  18. />
  19. <nodata v-else :dataStyle="2" :dataWidth="720" :dataHeight="440" />
  20. </div>
  21. </div>
  22. </template>
  23. <script setup>
  24. //样式1
  25. import news1Style from '@/components/template/component/list/1200x410/1.vue'
  26. //样式2
  27. import news2Style from '@/components/template/component/list/1200x410/2.vue'
  28. //暂无数据
  29. import nodata from '@/components/template/component/public/nodata.vue'
  30. //引入vue
  31. import {ref} from 'vue';
  32. const props = defineProps({
  33. skinId: Number,//皮肤id
  34. templateData:Object,//新闻数据
  35. });
  36. //该通栏下只有一个组件
  37. const componentTitle1 = {
  38. alias:props.templateData.componentList[0].data.alias,
  39. aLIas_pinyin:props.templateData.componentList[0].data.pinyin,
  40. is_url: props.templateData.componentList[0].data.is_url,
  41. children_count: props.templateData.componentList[0].data.children_count,
  42. cid:props.templateData.componentList[0].data.category_id
  43. }
  44. </script>
  45. <style lang="less" scoped>
  46. .imgNewsBigBox{
  47. width: 1200px;
  48. height: 410px;
  49. position: relative;
  50. margin: 0 auto;
  51. margin-bottom: 30px;
  52. display: flex;
  53. justify-content: space-between;
  54. align-items: center;
  55. box-sizing: content-box;
  56. }
  57. </style>