index.ux 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. <import name="x-book" src="../../components/book/book.ux"></import>
  2. <template>
  3. <div class="home-wrap">
  4. <div class="type-bar">
  5. <block for="type in typeList">
  6. <div class="type-item" @click="typeChange(type.index)">
  7. <text class="{{type.index === current ? 'cur' : ''}}">{{type.name}}</text>
  8. <text class="choose-bar" show="{{type.index === current}}"></text>
  9. </div>
  10. </block>
  11. </div>
  12. <list class="list-content">
  13. <list-item type="search" class="search-bar">
  14. <div class="search-bar__wrap">
  15. <image src="https://yueduyun.oss-cn-hangzhou.aliyuncs.com/xiaochengxu/img/search.png"></image>
  16. <text @click="toCategory">书名</text>
  17. </div>
  18. </list-item>
  19. <list-item type="swipe">
  20. <swiper class="swipe-bar" autoplay="true" indicator="false">
  21. <block for="banner">
  22. <div class="swipe-item">
  23. <image class="cover" src="https://cdn-newyc.ycsd.cn/ycsd_web_3nd/images/homebanners/夫人,魔尊大人盼你早点死呢1000390.jpg"></image>
  24. </div>
  25. </block>
  26. </swiper>
  27. </list-item>
  28. <list-item type="simple" class="book-list__wrap">
  29. <div class="book-list__title">
  30. <text>热门推荐</text>
  31. </div>
  32. <div class="book-list">
  33. <block for="books">
  34. <x-book multi="{{false}}"></x-book>
  35. </block>
  36. </div>
  37. </list-item>
  38. <list-item type="multi" class="book-list__wrap book-list__wrap--multi">
  39. <div class="book-list__title">
  40. <text class="border"></text>
  41. <text>神书直播</text>
  42. </div>
  43. <div class="book-list__line">
  44. <block for="books.slice(0, 4)">
  45. <x-book multi="{{false}}" width="{{150}}" lines="{{true}}"></x-book>
  46. </block>
  47. </div>
  48. <div class="book-list__multi">
  49. <block for="books.slice(4)">
  50. <div class="book-item">
  51. <x-book multi="{{true}}" width="{{150}}">
  52. <div class="book-info__multi">
  53. <text class="name">惊世妖娆凤凰月惊世妖娆凤凰月</text>
  54. <text class="intro">我作为一名公司普通的小职员,一觉醒来居然被人睡了,本来以为只是一次简单的意外事件,却不料因此被人蓄意利用卷卷卷进,我作为一名公司普通的小职员,一觉醒来居然被人睡了,本来以为只是一次简单的意外事件,却不料因此被人蓄意利用卷卷卷进...</text>
  55. </div>
  56. </x-book>
  57. </div>
  58. </block>
  59. </div>
  60. </list-item>
  61. <list-item type="simple" class="book-list__wrap">
  62. <div class="book-list__title">
  63. <text class="border"></text>
  64. <text>编辑推荐</text>
  65. </div>
  66. <div class="book-list">
  67. <block for="books">
  68. <x-book multi="{{false}}"></x-book>
  69. </block>
  70. </div>
  71. </list-item>
  72. <list-item type="multi" class="book-list__wrap book-list__wrap--multi">
  73. <div class="book-list__title">
  74. <text class="border"></text>
  75. <text>新书推荐</text>
  76. </div>
  77. <div class="book-list__line">
  78. <block for="books.slice(0, 4)">
  79. <x-book multi="{{false}}" width="{{150}}" lines="{{true}}"></x-book>
  80. </block>
  81. </div>
  82. <div class="book-list__multi">
  83. <block for="books.slice(4)">
  84. <div class="book-item">
  85. <x-book multi="{{true}}" width="{{150}}">
  86. <div class="book-info__multi">
  87. <text class="name">惊世妖娆凤凰月惊世妖娆凤凰月</text>
  88. <text class="intro">我作为一名公司普通的小职员,一觉醒来居然被人睡了,本来以为只是一次简单的意外事件,却不料因此被人蓄意利用卷卷卷进,我作为一名公司普通的小职员,一觉醒来居然被人睡了,本来以为只是一次简单的意外事件,却不料因此被人蓄意利用卷卷卷进...</text>
  89. </div>
  90. </x-book>
  91. </div>
  92. </block>
  93. </div>
  94. </list-item>
  95. </list>
  96. </div>
  97. </template>
  98. <script>
  99. import { demoApi } from "../../api";
  100. export default {
  101. props: {},
  102. data() {
  103. return {
  104. typeList: [
  105. {
  106. name: "男生",
  107. index: 0
  108. },
  109. {
  110. name: "女生",
  111. index: 1
  112. }
  113. ],
  114. banner: [1, 2, 3],
  115. books: [1, 2, 3, 4, 5, 6],
  116. current: 0
  117. }
  118. },
  119. onInit() {
  120. demoApi().then(r => {
  121. console.log(r);
  122. })
  123. },
  124. typeChange(index) {
  125. this.current = index;
  126. },
  127. toCategory() {
  128. this.$emit('change');
  129. }
  130. }
  131. </script>
  132. <style lang="less">
  133. @import "../../assets/less/home.less";
  134. </style>