首页 > 其他分享 >实现简易的前端路由

实现简易的前端路由

时间:2024-03-16 22:33:38浏览次数:15  
标签:onhashchange hash 前端 comName vm 简易 window zhuye 路由

 

  • 基于URL的hash实现(点击菜单的时候改变URL的hash,根据hash的变化控制组件的切换)

 

//监听  window  的  onhashchange  事件,根据获取到的最新的 hash 值,切换要显示的组建的名称

window.onhashchange = function() {

  //  通过 location.hash 获取到最新的 hash 值

}

 

模拟路由---切换导航栏:

<!-切换组件的超链接-->

<a href="#/zhuye">主页</a>

<a href="#/keji">科技</a>

<a href="#/caijing">财经</a>

<a href="#/yule">娱乐</a>

 

<!-根据 :is 属性指定的组件名称,把对应的组件渲染到 component 标签所在的位置-->

<!-可以把 component 标签当作是【组件的占位符】-->

<component  :is="comName"></component>

 

//定义需要切换的4个组件

//vue实力对象中

data:{

   comName:"zhuye"

}

 

//注册私有组件

components:{

  zhuye,

  keji,

  caijing,

  yule

}

 

监听 window 的 onhashchange 事件,根据获取到的最新的 hash 值,切换要显示的组件的名称

window.onhashchange = function(){

  //通过 location.hash 获取到最新的 hash 值

      console.log(location.hash);

  switch(location.hash.slice(1)){    //截取从第一个字符往后的所有字符,也就是去掉#

    case'/zhuye':

      vm.comName = 'zhuye'

    break

    case'/keji':

      vm.comName = 'keji'

    break

    case'/caijing':

      vm.comName = 'caijing'

    break

    case'/yule':

      vm.comName = 'yule'

    break

}}

标签:onhashchange,hash,前端,comName,vm,简易,window,zhuye,路由
From: https://www.cnblogs.com/wuyunna/p/18077782

相关文章

  • 部署测试平台-部署前端
    1.打包前端进入前端根目录,执行npmrunbuild 打成的包是放在dist文件夹下面:2.把打好的前端dist包下所有的文件放到nginx挂载目录/root/website/web/imos下 nginx挂载前端的目录,步骤请参https://www.cnblogs.com/quxue/p/180673163.检查:浏览器打开链接:http://服务......
  • 路由笔记
    1.1路由路由是一个比较广义和抽象的概念,路由的本质就是对应关系。在开发过程中,路由分为:前端路由和后端路由。后端路由:概念----根据不同的用户URL请求,服务器端返回不同的内容。        本质----URL请求地址与服务器资源之间的对应关系。       (......
  • 纯前端实现 PNG 图片压缩 | UPNG.js
    在线Demo体验地址→:https://demos.sugarat.top/pages/png-compress/前言最近在迭代自己的图床应用,由于使用时间的累计,存储空间占用越来越大了,在做Web应用的时候会随手拿tinypng压缩一下图片。想着给咱图床也加个压缩的功能,这样上传/访问也能省点......
  • 前端React篇之React setState 调用的原理、React setState 调用之后发生了什么?是同步
    目录ReactsetState调用的原理ReactsetState调用之后发生了什么?是同步还是异步?ReactsetState调用之后发生了什么?setState是同步还是异步的ReactsetState调用的原理在React中,setState方法是用于更新组件状态的重要方法。当setState被调用时,React会对组件进......
  • 【前端】移动端布局
    目录1.移动端特点分辨率二倍图 2.百分比布局3.flex布局 3.1flex布局模型3.2主轴对齐方式 3.3 侧轴对齐方式3.4flex属性 1.移动端特点PC端网页和移动端网页的不同PC端网页:屏幕大,网页固定版心 jd.com移动端网页:屏幕小没有版心网页宽度多数为100% mjd.c......
  • ISIS外部路由实验简述
    默认情况下,level-1区域路由会传递给level-2区域,但是level-2区域路由不会传递给level-1区域。Level-2区域配置外部路由,并引入ISISLevel-1/2上把外部路由泄露给level-1区域实验拓扑图:实验基础配置:r1:syssysnamer1undoinfoenableintg0/0/0ipadd12.1.1.116qu......
  • 后端返回的数据结构可能是多样的,前端需要对数据进行处理,以适应页面展示的需求。请给出
    在前端开发中,针对后端返回的多变数据结构进行处理以适应页面展示需求的最佳实践包括以下几个方面:定义清晰的数据模型:在前端根据UI设计和功能需求明确所需的数据结构,并创建对应的JavaScript对象模型(或使用TypeScript等类型语言提供静态类型检查)。这有助于前端开发者预先了解......
  • 前端开发时,应该如何考虑开发的主次先后,比如数据结构、数据流转、UI绘制,js逻辑等等,请给
    前端开发时,应该如何考虑开发的主次先后,比如数据结构、数据流转、UI绘制,js逻辑等等,请给出你的最佳实践在前端开发中,正确规划和安排各项任务的主次先后对于项目的顺利进行至关重要。以下是一个针对数据结构、数据流转、UI绘制以及JavaScript逻辑等方面的开发优先级与最佳实践建议:......
  • 后端返回的数据会不会不符合页面上的展示,还是说后端返回的数据结构就是页面上需要展示
    后端返回的数据可能不一定完全符合前端页面展示的需求,这取决于后端API设计和前端UI/UX的设计。有时后端返回的数据可能是原始数据或者为了满足数据库存储需求的结构化数据,而前端可能需要对这些数据进行处理以便更好地呈现给用户。数据适配:如果后端返回的数据结构与前端展示所......
  • 一般后端返回的数据结构是数据库中的存储结构,与前端需要展示的结构不一样对吗?
    是的,一般情况下后端返回的数据结构确实可能与前端需要展示的结构不完全一样。原因有以下几点:数据库存储结构:后端从数据库中查询到的数据通常遵循数据库表的设计,包括关系型数据库中的外键关联、嵌套数据等。这些数据可能是为了满足数据库设计规范和查询效率而组织的,并不一定直......