博客列表 >JS和Vue框架实现路由小案例

JS和Vue框架实现路由小案例

陈强
陈强原创
2021年01月21日 16:19:59482浏览

原生实现路由案例

  1. <div class="app">
  2. <ul>
  3. <li><a href="#list1">国内新闻</a></li>
  4. <li><a href="#list2">国际新闻</a></li>
  5. </ul>
  6. <div class="list"></div>
  7. </div>
  8. <script>
  9. const list1 = `
  10. <ul>
  11. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  12. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  13. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  14. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  15. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  16. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  17. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  18. </ul>
  19. `;
  20. const list2 = `
  21. <ul>
  22. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  23. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  24. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  25. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  26. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  27. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  28. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  29. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  30. </ul>
  31. `;
  32. const lists = document.querySelector(".list");
  33. // 监听锚点被点击的时候调用show函数显示相应的列表
  34. window.addEventListener("hashchange", show);
  35. //监听页面加载的时候调用show函数显示列表
  36. window.addEventListener("load", show);
  37. function show() {
  38. //location.hash是获取锚点的名称
  39. console.log(location.hash);
  40. switch (location.hash) {
  41. case "#list1":
  42. lists.innerHTML = list1;
  43. return;
  44. case "#list2":
  45. lists.innerHTML = list2;
  46. return;
  47. default:
  48. lists.innerHTML = list1;
  49. }
  50. }
  51. </script>

用Vue路由库实现案例

  1. //引入Vue路由库
  2. <script src="vue-router-dev/dist/vue-router.js"></script>
  3. <div class="app">
  4. <router-link to="/list1">国内新闻</router-link>
  5. <router-link to="/list2">国际新闻</router-link>
  6. <router-view></router-view>
  7. </div>
  8. <script>
  9. const list1 = {
  10. template:`
  11. <ul>
  12. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  13. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  14. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  15. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  16. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  17. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  18. <li><a href=""> 春节返乡要居家隔离?返乡人员如何划定?卫健委回应 </a></li>
  19. </ul>
  20. `};
  21. const list2 = {
  22. template:`
  23. <ul>
  24. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  25. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  26. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  27. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  28. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  29. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  30. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  31. <li><a href="">拜登宣誓并强调"团结" 就职首日推翻9项特朗普政令 </a></li>
  32. </ul>
  33. `};
  34. const router = new VueRouter({
  35. routes:[
  36. {path:'/list1',component:list1},
  37. {path:'/list2',component:list2},
  38. ],
  39. })
  40. const vm = new Vue({
  41. el:'.app',
  42. router:router,
  43. })
  44. </script>
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议