我的编程空间,编程开发者的网络收藏夹
学习永远不晚

vue3路由hash与History怎么设置

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

vue3路由hash与History怎么设置

本篇内容介绍了“vue3路由hash与History怎么设置”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

    vue3路由hash与History的设置

    1、history 关键字:createWebHistory

    import { createRouter, createWebHistory } from 'vue-router'const routes = [ {  path: '/userinfo',  name: 'UserInfo',  component: () => import('../views/UserInfo.vue')}]const router = createRouter({  history: createWebHistory(process.env.BASE_URL),  routes})export default router

    history模式直接指向history对象,它表示当前窗口的浏览历史,history对象保存了当前窗口访问过的所有页面网址。URL中没有#,它使用的是传统的路由分发模式,即用户在输入一个URL时,服务器会接收这个请求,并解析这个URL,然后做出相应的逻辑处理。

    特点:

    当使用history模式时,URL就像这样:hhh.com/user/id。相比hash模式更加好看。

    虽然history模式不需要#。但是,它也有自己的缺点,就是在刷新页面的时候,如果没有相应的路由或资源,就会刷出404来。

    history api可以分为两大部分,切换历史状态 和 修改历史状态:

    修改历史状态:

    包括了 HTML5 History Interface 中新增的 pushState() 和 replaceState() 方法,这两个方法应用于浏览器的历史记录栈,提供了对历史记录进行修改的功能。只是当他们进行修改时,虽然修改了url,但浏览器不会立即向后端发送请求。如果要做到改变url但又不刷新页面的效果,就需要前端用上这两个API。

    切换历史状态:

    包括forward()、back()、go()三个方法,对应浏览器的前进,后退,跳转操作。

    配置:

    想要设置成history模式,就要进行以下的配置(后端也要进行配置):

    const router = new VueRouter({  mode: 'history',  routes: [...]})

    2、hash 关键字:createWebHashHistory

    import { createRouter, createWebHashHistory } from 'vue-router'const routes = [{  path: '/userinfo',  name: 'UserInfo',  component: () => import('../views/UserInfo.vue')}]const router = createRouter({  history: createWebHashHistory(),  routes})export default router

    hash模式是开发中默认的模式,也称作锚点,它的URL带着一个#,例如:www.abc.com/#/vue,它的hash值就是#/vue。

    特点:

    hash值会出现在URL里面,但是不会出现在HTTP请求中,对后端没有影响。所以改变hash值不会重新加载页面。

    这种模式的浏览器支持度很好,低版本的IE浏览器也支持这种模式。

    hash路由被称为是前端路由,已经成为SPA(单页面应用)的标配。

    原理:

    hash模式的主要原理就是onhashchange()事件:

    window.onhashchange = function(event){    console.log(event.oldURL, event.newURL);    let hash = location.hash.slice(1);}

    使用onhashchange()事件的好处就是,在页面的hash值发生变化时,无需向后端发起请求,window就可以监听事件的改变,并按规则加载相应的代码。

    除此之外,hash值变化对应的URL都会被浏览器记录下来,这样浏览器就能实现页面的前进和后退。虽然是没有请求后端服务器,但是页面的hash值和对应的URL关联起来了。

    获取页面hash变化的方法:

    // 监听,当路由发生变化的时候执行watch: {  $route: {    handler: function(val, oldVal){      console.log(val);    },    // 深度观察监听    deep: true  }},

    vue2和vue3中路由的区别和写法

    Vue 2 和 Vue 3 中路由的主要区别在于使用的路由库不同。在 Vue 2 中,通常使用 Vue Router 作为路由库;而在 Vue 3 中,Vue Router 仍然是官方推荐的路由库,但也可以选择使用新的路由库 - Vue Router Next。

    下面分别介绍在 Vue 2 和 Vue 3 中使用 Vue Router 的路由写法:

    vue3中使用 Vue Router

    安装 Vue Router:在终端中执行以下命令进行安装:

    npm install vue-router

    引入 Vue Router 并配置路由:在 main.js 中引入 Vue Router,并配置路由规则和组件对应关系。

    示例代码如下:

    import Vue from 'vue'import VueRouter from 'vue-router'import Home from './components/Home.vue'import About from './components/About.vue' Vue.use(VueRouter) const routes = [  { path: '/', component: Home },  { path: '/about', component: About }] const router = newVueRouter({  routes // 等价于 routes: routes}) newVue({  el: '#app',  router,  render: h =>h(App)})

    在模板中使用路由:在模板中使用 router-link 组件来实现路由跳转,router-view 组件用于显示对应的组件内容。

    示例代码如下:

    <template>    <div id="app">        <nav>            <router-link to="/">Home</router-link>            <router-link to="/about">About</router-link>        </nav>        <router-view></router-view>    </div></template>

    vue3中使用 Vue Router Next

    安装 Vue Router Next:在终端中执行以下命令进行安装:

    npm install vue-router@4

    引入 Vue Router Next 并配置路由:在 main.js 中引入 Vue Router Next,并配置路由规则和组件对应关系。

    示例代码如下:

    import { createApp } from 'vue'import { createRouter, createWebHistory } from 'vue-router'import Home from './components/Home.vue'import About from './components/About.vue'import App from './App.vue'const routes = [  { path: '/', component: Home },  { path: '/about', component: About }] const router = createRouter({  history: createWebHistory(),  routes}) const app = createApp(App)app.use(router)app.mount('#app')

    在模板中使用路由:在模板中使用 router-link 组件来实现路由跳转,router-view 组件用于显示对应的组件内容。示例代码如下:

    <template>    <div id="app">        <nav>            <router-link to="/">Home</router-link>            <router-link to="/about">About</router-link>        </nav>        <router-view></router-view>    </div></template>

    “vue3路由hash与History怎么设置”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    vue3路由hash与History怎么设置

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    vue3路由hash与History怎么设置

    本篇内容介绍了“vue3路由hash与History怎么设置”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!vue3路由hash与Histor
    2023-07-06

    vue3中关于路由hash与History的设置

    这篇文章主要介绍了vue3中关于路由hash与History的设置方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-13

    Vue前端路由中hash与history的区别是什么

    今天小编给大家分享一下Vue前端路由中hash与history的区别是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。没了
    2023-06-30

    linux怎么设置默认路由

    要设置默认路由,可以使用以下命令:使用命令`route -n`查看当前的路由表,找到默认网关的IP地址。使用命令`ip route del default`删除当前的默认路由。使用命令`ip route add default via `设
    2023-10-27

    tplink路由器怎么设置网址

    这篇文章主要介绍“tplink路由器怎么设置网址”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“tplink路由器怎么设置网址”文章能帮助大家解决问题。tplink路由器设置网址的方法:电脑: 1、首
    2023-07-02

    win10不能设置路由器怎么办

    这篇文章主要介绍了win10不能设置路由器怎么办,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、断开路由器与电信光猫之间的连接,将电脑连接到路由器(1、2、3、4任意一个接
    2023-06-28

    无线中继路由器怎么设置

    今天小编给大家分享一下无线中继路由器怎么设置的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。无线中继路由器置方法:1、因为无线
    2023-07-02

    云服务器路由器怎么设置

    云服务器路由器是指一种网络连接设备,用于将多个云服务器连接到一个公共的网络上。这些云服务器路由器可以通过使用网络路由协议(例如ARP)来实现与云服务器之间的通信。以下是云服务器路由器的一般设置步骤:连接到服务器:首先,将云服务器路由器作为网络适配器与其他云服务器连接在一起。这有助于加快数据传输速度和减少网络延迟。配置网络协议:在配置网络协议时,可以将ARP协议指定为默认的服务器和路由协议。
    2023-10-26

    怎么设置fon无线路由器呢?

      相信大家都有使用过FON路由器吧,它的公司总部位于西班牙,由Martin Varsavsky创办于2005年11月。使用FON路由器的用户可选择要有偿或无偿供应自己的无线网络。今天小编给大家带来的教程是:Cisco路由技术之怎么设置fon无线路由器呢?具体的操作步骤如下:  操作步骤一:首先大家需要做的第一件事情就
    怎么设置fon无线路由器呢?
    2024-04-17

    怎么设置软路由全国动态ip

    本篇内容介绍了“怎么设置软路由全国动态ip”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! 动态ip一般用于居民公寓内部或校园区,采取节约网络
    2023-06-20

    云服务器路由器怎么设置上网

    云服务器路由器是一个可以帮助企业或者个人在云端上实现互联网连接的设备。它通常包括一个或多个路由设备,这些路由设备负责管理和转发服务器的流量,以使得数据包能够在云服务器和客户端之间传递。以下是在云服务器路由器上设置上网的步骤:下载和安装云服务器路由器的配置工具。在此可以选择手动安装或者使用在线安装向导来完成。在浏览器中访问http://localhost:8080找到相应的路由器并进入管理页
    2023-10-26

    怎么配置云服务器路由器设备

    配置云服务器路由器设备可以参考以下步骤:确定您的云服务器路由器设备数量和配置。如果您有多个设备,可以根据需要创建不同的路由设备。您可以使用CloudFlare的路由和设备管理器功能来查找并配置路由器设备。安装路由器设备驱动程序。可以将路由器设备的驱动程序安装在本地计算机上,以便进行配置和管理。配置路由器设备。您可以使用CloudFlare的路由和设备管理器来配置路由器设备、路由和端口映射、安全策略等。启动路由器设备。...
    2023-10-27

    路由器连接云服务器怎么设置

    首先,要将路由器连接到云服务,您需要配置路由器和云服务的IP地址。您可以使用现有的网络服务提供商(ISP)提供的路由器IP地址或使用VPN连接,将路由器连接到云服务的公共IP地址。此外,您还可以使用云服务提供商的专用IP地址或其他加密IP地址来连接云服务。接下来,配置路由器将使您能够将数据和应用程序从一个云服务移动到另
    路由器连接云服务器怎么设置
    2023-10-28

    云服务器联网怎么设置路由器

    首先,需要先准备一台具有无线路由功能的电脑,并将其固定在一台计算机上,如台式机建议使用路由器作为桥梁,如若需要笔记本电脑或者其他无线设备,可以安装相关的无线路由器软件。将路由器接在计算机的LAN口上,然后用一根网线连接到路由器WAN口上。在电脑上下载并安装相关的无线路由器软件,如WirelessAdNetworker、WirelessLANPro等应用程序,将其放置在您的电脑上。打开浏览器
    2023-10-26

    Linux路由中怎么设置ip和mac绑定

    今天就跟大家聊聊有关Linux路由中怎么设置ip和mac绑定,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。首先使用ipchains或者iptables来设定只允许合法的IP地址连出。
    2023-06-16

    云服务器怎么联网设置路由器

    如果您要设置路由器与其它电脑进行通信,您需要使用路由器的网络接口或者网关。请按照以下步骤操作:连接到路由器:您需要将电源线插入路由器的USB接口中,然后将路由器与电脑连接在同一个WAN口上。设置路由器的网络接口:根据路由器的官方说明,选择正确的网关地址(例如:192.168.1.1),然后将路由器的电源连接到相应的电源插座上。在路由器的默认设置中,您可以使用默认的管理IP地址。请确保您
    2023-10-26

    云服务器路由器怎么设置网速

    云服务器路由器是一个连接互联网的网络设备,可以将数据从一个服务器传输到另一个服务器。通常,路由器会为每台服务器分配一个专有的IP地址以及子网掩码,从而实现数据的路由和转发。为了提高网络速度,可以使用以下几个方法来设置网络速度:设置路由器路由参数:路由器路由参数需要根据实际情况来设置,以满足不同的网络需求。例如,对于一个大型互联网应用,可以设置网络带宽、服务器数量和服务器负载等参数;对于一个小
    2023-10-26

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录