index.html 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. {extend name="public/base"/}
  2. {block name="css"}
  3. <style>
  4. </style>
  5. {/block}
  6. {block name="body"}
  7. <van-nav-bar
  8. class="nav-theme"
  9. :fixed="true"
  10. :placeholder="true"
  11. >
  12. <template #title>
  13. <span class="text-white">首页</span>
  14. </template>
  15. </van-nav-bar>
  16. <van-swipe :autoplay="3000" indicator-color="white">
  17. {volist name="slide" id="item"}
  18. <van-swipe-item>
  19. <van-image src="{$item.image}" @click="toUrl('{$item.url}')"></van-image>
  20. </van-swipe-item>
  21. {/volist}
  22. </van-swipe>
  23. <van-grid :border="false">
  24. {volist name="navigation" id="item"}
  25. <van-grid-item url="{$item.url}" icon="{$item.image}" text="{$item.title}"></van-grid-item>
  26. {/volist}
  27. </van-grid>
  28. <article-list :list="list"></article-list>
  29. <van-tabbar v-model="active" :placeholder="true">
  30. <van-tabbar-item icon="wap-home-o">首页</van-tabbar-item>
  31. <van-tabbar-item icon="description" url="{:url('article/index')}">文章</van-tabbar-item>
  32. <van-tabbar-item icon="user-circle-o" url="{:url('my/index')}">我的</van-tabbar-item>
  33. </van-tabbar>
  34. {/block}
  35. {block name="script"}
  36. <script>
  37. function v_setup() {
  38. let base = {};
  39. base.active = 0;
  40. base.list = Vue.reactive({$article});
  41. base.toUrl = (url) => {
  42. if (url) {
  43. location.href = url;
  44. }
  45. };
  46. return base;
  47. }
  48. </script>
  49. {/block}
  50. {block name="vue"}
  51. <script src="__COMPONENTS__/articleList.js"></script>
  52. {/block}