温州专业手机网站制作哪家便宜,电脑软件制作,手机网站左右滑动效果,更换网站服务器在Vue 3中#xff0c;由于没有实例化对象this#xff0c;因此#xff0c;无法通过this去访问 $route对象#xff0c;而是通过导入一个名为 useRouter 的方法#xff0c;执行这个方法后#xff0c;返回一个路由对象#xff0c;通过这个路由对象就可以获取到当前路由中的信…在Vue 3中由于没有实例化对象this因此无法通过this去访问 $route对象而是通过导入一个名为 useRouter 的方法执行这个方法后返回一个路由对象通过这个路由对象就可以获取到当前路由中的信息包括参数的读取接下来进行详细说明。
路由跳转
除了通过a标签进行路由跳转之外还可以使用router-link标签实现跳转功能它是一个全局的组件可以直接在template 中使用无需导入编译后自动转成一个a标签但它的功能比a标签更加灵活直接在当前页中进行路由跳转不会刷新页面如下列代码
router-link to/list学校首页/router-link它等价于如下代码
a href/list学校首页/a除使用超级链接标签进行路由跳转外还可以在代码中通过路由对象 router进行页面之前的相互跳转在模板中的如下代码所示
div clickrouter.push({name:list})学校首页
/div
其中router 对象必须先导入再调用才能在模板中直接使用代码如下所示
import {useRouter} from vue-router
export default {name: App,data(){return{router:useRouter()}}
}
**注意**从路由模块中导入的必须是useRouter 方法只有在调用这个方法之后的 router对象中才可以使用push方法push方法的本质是向当前的路由栈中再添加一个新的路由记录并根据这个记录进行路由切换从而实现页面跳转的功能。
带参数跳转
在路由跳转时还可以携带参数进入目标页跳转标签和方式不同携带参数的格式也不一样如果是一个a标签携带参数跳转那么它的携带参数的格式如下代码所示 a href/list?gradeId1001一年级/a上述代码采用查询字符串方式携带参数即问号后携带参数还可以在路径中使用配置项指定的格式携带参数如下代码所示 a href/list/1001一年级/a上述代码中/1001是配置时指定的格式1001是一个名为gradeId的变量值这个带参数跳转方式需要在路由配置中设置代码如下所示
{path: /list/:gradeId,name: list2,component: () import(../views/list.vue)}
在上述代码中path属性设置路径时可以通过变量gradeId带参数跳转这样设置后在目标页中就可以通过路由对象中的 params.gradeId格式获取到携带的参数。
除使用a标签携带参数跳转外还可以使用 router-link 和其他标签携带参数跳转如果是router-link那么它的跳转格式如下代码所示 router-link :to{name: list2,params: {gradeId: 1001}}一年级/router-link
如果是其他的元素由于没有to或href属性只能调用单击事件进行携带参数的跳转上述代码改成 div标签跳转则修改后的代码如下所示
div clickrouter.push({name: list2,params: {gradeId: 1001}})一年级/div