当前位置: 首页 > news >正文

广州微网站建设价位/网站网址查询工具

广州微网站建设价位,网站网址查询工具,安阳市网络公司,html5网站代理在Vue 3中,导航守卫仍然是一个重要的概念,用于在路由切换时执行一些特定的逻辑。Vue Router提供了多个导航守卫,包括全局守卫、路由独享守卫和组件内守卫。可以在路由切换时执行一些特定的逻辑,例如身份验证、权限控制、数据加载等…

在Vue 3中,导航守卫仍然是一个重要的概念,用于在路由切换时执行一些特定的逻辑。Vue Router提供了多个导航守卫,包括全局守卫、路由独享守卫和组件内守卫。可以在路由切换时执行一些特定的逻辑,例如身份验证、权限控制、数据加载等帮助你更好地控制整个应用程序的导航流程。

文章目录

  • 一、全局前置守卫
  • 二、路由独享守卫
  • 三、全局后置守卫
  • 四、组件内守卫
  • 五、案例

一、全局前置守卫

全局前置守卫会在路由切换之前被调用,并且在所有路由切换中都会被触发

router.beforeEach((to, from, next) => {// 在这里执行你的逻辑// 通过调用next()来继续路由切换,或者调用next(false)取消路由切换
})

二、路由独享守卫

你也可以为特定的路由定义守卫

const routes = [{path: '/example',component: ExampleComponent,beforeEnter: (to, from, next) => {// 在这里执行你的逻辑// 通过调用next()来继续路由切换,或者调用next(false)取消路由切换}}
]

三、全局后置守卫

全局后置守卫会在路由切换之后被调用,并且在所有路由切换中都会被触发

router.afterEach((to, from) => {// 在这里执行你的逻辑
})

四、组件内守卫

组件内守卫是针对特定组件的守卫,组件内守卫有3个

注意:beforeRouteEnter在setup语法糖中是无法使用的,需要再起一个script标签 使用defineComponent方式来使用

<script lang="ts">
import { defineComponent } from 'vue';
export default defineComponent({beforeRouteEnter(to, from, next) {// 在这里执行你的逻辑// 通过调用next()来继续路由切换,或者调用next(false)取消路由切换},beforeRouteUpdate(to, from, next) {// 在这里执行你的逻辑// 通过调用next()来继续路由切换,或者调用next(false)取消路由切换},beforeRouteLeave(to, from, next) {// 在这里执行你的逻辑// 通过调用next()来继续路由切换,或者调用next(false)取消路由切换}
});
</script><script setup lang="ts">
import { ref, reactive, computed, onMounted } from 'vue';
</script>

五、案例

下面是一个简单的案例,当我们线上考试时,若通过更改浏览器网址到其他地方而没有到交卷页则提醒你正在考试,是否放弃考试。这个时候我们就可以使用组件内守卫来进行逻辑处理。当然,下面的案例只是提供一个简单的组件内守卫适用场景,代码比较粗糙,具体还需要根据项目情况来处理。

<script setup lang="ts">
import { useRoute,useRouter } from "vue-router";
const router = useRouter();const back = async()=>{try {await this.$confirm("你正在考试,是否放弃考试", "确认信息", {distinguishCancelAndClose: true,confirmButtonText: "确定",});try {// await this.toTestResult(true)} catch (e) {router.push({ name: "Home" });}} catch (e) {return false;}}
</script><script lang="ts">
import { defineComponent } from "vue";
export default defineComponent({beforeRouteEnter(to, from, next) {//没有跳到交卷页面提醒if (to.path != "result") {back();} else {next();}},beforeRouteUpdate(to, from, next) {// 在这里执行你的逻辑// 通过调用next()来继续路由切换,或者调用next(false)取消路由切换},beforeRouteLeave(to, from, next) {// 在这里执行你的逻辑// 通过调用next()来继续路由切换,或者调用next(false)取消路由切换},});
</script>
http://www.jmfq.cn/news/5327623.html

相关文章:

  • 菏泽炫佑网站建设/怎样开网站
  • 职业教育网站建设方案/网络营销软文范文
  • 最专业网站建设开发/如何自己做引流推广
  • 类似美团的网站建设/网站开发框架
  • 东莞浩智建设网站公司/微信公众号推广网站
  • 拓尔思网站建设公司/网页制作代码大全
  • 涪陵网站建设/常见的网络推广方法
  • 网站建设常用六大布局/营销类网站
  • 中小型网站建设怎么样/橙子建站官网
  • 网站建设找什么工作室/谷歌广告投放教程
  • 互联网网站建设挣钱吗/友情链接地址
  • 十堰学网站建设培训班/刷赞业务推广网站
  • 福建 建设网站/青岛网站建设方案优化
  • 辽宁建设厅网站首页/2021小说排行榜百度风云榜
  • 隆化县建设局网站/整合营销方案怎么写
  • 长沙做网站建设公司哪家好/专业软文发布平台
  • 大大福利站网站建设/合肥seo按天收费
  • 网站建设的运用场景/网站设计制作的服务怎么样
  • 青岛市城乡建设局网站/企业查询网
  • 宁德市住房和城乡建设局新网站/seo排名工具
  • 环保行业网站建设/危机公关
  • 广州微网站建设/搜狗搜索引擎推广
  • 龙岩市住房和城乡建设厅网站首页/关键词营销优化
  • 桂林住房城乡建设委员会网站/seo常用的工具
  • 建设网站的产品规划/免费宣传平台
  • 青秀区网站建设/宁德seo公司
  • 农业公司网站建设/上海关键词排名手机优化软件
  • 网站建设中怎么添加源码/宁波正规seo推广
  • 网络网站建设10大指标/打开百度网站首页
  • 普洱市住房城乡建设局网站/郑州网络推广服务