quickTab.vue 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. <template>
  2. <div class="w-full h-auto rounded">
  3. <!-- 切换框-->
  4. <div class="tabs w-full flex h-12">
  5. <div
  6. v-for="(item,i) in tabRouter"
  7. :key="item.com"
  8. @click="changeBanner(i)"
  9. :class="`
  10. tab-handle_cjs
  11. ${(tabNow-1)===i?'table-left':''}
  12. ${tabNow===i?'table-now':''}
  13. ${(tabNow+1)===i?'table-right':''}
  14. flex-1 text-2xl text-red-50
  15. flex justify-center items-center cursor-pointer
  16. bg-gray`">
  17. {{item.text}}
  18. </div>
  19. </div>
  20. <div class="h-auto bg-blue-300" >
  21. <component :is="tabRouter[tabNow].com"></component>
  22. </div>
  23. </div>
  24. </template>
  25. <script>
  26. // import domesticTab from "@components/index/components/quickTabs/domesticTab";
  27. // import internationalTab from "@components/index/components/quickTabs/internationalTab";
  28. // import newsTab from "@components/index/components/quickTabs/newsTab";
  29. export default {
  30. name: "quickTab",
  31. components:{
  32. // domesticTab,
  33. // internationalTab,
  34. // newsTab,
  35. },
  36. data(){
  37. return {
  38. tabNow:0,
  39. tabRouter:[
  40. {
  41. text:'国内机票',
  42. com: 'domesticTab'
  43. },
  44. {
  45. text:'国际机票',
  46. com: 'internationalTab'
  47. },
  48. ]
  49. }
  50. },
  51. methods:{
  52. changeBanner(i){
  53. this.tabNow = i;
  54. }
  55. }
  56. }
  57. </script>
  58. <style scoped>
  59. .tabs{
  60. background-color: skyblue;
  61. }
  62. .tab-handle_cjs:hover{
  63. background-color: #ffffff;
  64. color: black;
  65. }
  66. .table-left{
  67. border-radius:0 0 0.25em 0;
  68. }
  69. .table-right{
  70. border-radius:0 0 0 0.25em;
  71. }
  72. .table-now{
  73. background-color: skyblue;
  74. }
  75. </style>