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

衡水做网站推广找谁品牌营销案例分析

衡水做网站推广找谁,品牌营销案例分析,百度搜索引擎排行榜,什么网站框架在现代前端开发中#xff0c;使用 Vue 3 和 TypeScript 的组合是一种流行且高效的开发方式。Vite 是一个极速的构建工具#xff0c;可以显著提升开发体验。本文博主将指导你如何在 Vite Vue 3 TypeScript 项目中配置前置路由守卫#xff08;Navigation Guards#xff09;…        在现代前端开发中使用 Vue 3 和 TypeScript 的组合是一种流行且高效的开发方式。Vite 是一个极速的构建工具可以显著提升开发体验。本文博主将指导你如何在 Vite Vue 3 TypeScript 项目中配置前置路由守卫Navigation Guards。 前置条件 在开始配置项目前置路由守卫前博主希望你能够先达成以下前置条件 1.完成Vue3前端项目搭建: Vite 创建 Vue3 TS 项目 2.引入Vue-Router模块Vue3项目配置Vue-Router 3.完成Pinia配置Vue项目安装Pinia 1.创建前置守卫 在之前的章节中我们已经完成了路由视图和路由重定向的配置现在我们只需要为我们的路由器实例对象添加一个导航守卫就可以控制是否放行路由跳转啦。 我们可以通过 router.beforeEach 注册一个全局前置守卫当一个导航触发时全局前置守卫按照创建顺序调用。         守卫是异步解析执行的导航在所有守卫 resolve 完之前一直处于等待中。 // 路由配置文件 index.tsimport { createWebHistory, createRouter } from vue-router// 定义路由配置 const routes: Arrayany [{path: /,redirect: /home},{path: /login,name: Login,component: () import(//views/login/index.vue)},{path: /home,name: Home,component: () import(//views/home/index.vue),} ]// 创建路由实例 const router createRouter({history: createWebHistory(), // 导航历史记录模式routes })// 导航守卫 router.beforeEach((to, from) {// 返回 false 以取消导航return false })// 导出实例 export default router 每个路由守卫都可以有以下三个参数 to即将要进入的目标from当前导航正要离开的路由next当你在使用next时确保 next 在任何给定的导航守卫中都被严格调用一次。它可以出现多于一次但是只能在所有的逻辑路径都不重叠的情况下否则钩子永远都不会被解析或报错。 2.配置无token跳转登录页 既然知道了 Vue-Router 导航守卫的工作机制那么我们现在可以尝试一下结合 Pinia 进行路由控制了 2.1.配置User状态 在 src/store/ 目录下新建 userInfo.ts 文件用于存储 User/token 等状态 // userInfo.tsimport { defineStore } from pinia import { reactive } from vueinterface UserInfo {token: string,userId: string,userName: string,roles: Arraystring }export const useUserInfoStore defineStore(userInfo, () {const state reactive({userInfo: {} as UserInfo})const setUserInfo (userInfo: UserInfo) {state.userInfo userInfo}const getUserInfo () {return state.userInfo}return { state, setUserInfo, getUserInfo } }) 2.2.配置前置路由守卫 在 router.beforeEach 中根据token配置路由跳转: // index.ts 路由配置文件import { createWebHistory, createRouter } from vue-router // 引入我们刚才写好的 Pinia 状态 import { useUserInfoStore } from //store/userInfo// 定义路由配置 const routes: Arrayany [{path: /,redirect: /home},{path: /login,name: Login,component: () import(//views/login/index.vue)},{path: /home,name: Home,component: () import(//views/home/index.vue),} ]// 创建路由实例 const router createRouter({history: createWebHistory(), // 导航历史记录模式routes })// 导航守卫 router.beforeEach((to, from, next) { const userInfoStore useUserInfoStore()if ((to.path /login) (!userInfoStore.state.userInfo.token)) {next()} else {if (userInfoStore.state.userInfo.token) {next()} else {next(/login)}}})// 导出实例 export default router 3.效果测试 项目根路径下(与src目录同级)运行命令行 # 启动项目 $ npm run dev 可见现在我们的pinia中没有存储的有token所以在项目启动时被全局前置守卫拦截下来跳转到登录路由。
http://www.w-s-a.com/news/529485/

相关文章:

  • 广东省建设工程执业中心网站wordpress的分类目录和标签
  • 甘肃省两学一做专题网站广东外发加工网
  • 用python导入wordpress公司网络优化方案
  • 效益成本原则网站建设wordpress 上传rar
  • 大连网站制作 连城传媒渠道网络公司官网
  • 电影天堂网站用什么程序做的wordpress 添加链接地址
  • 购买空间网站哪个好重庆英文网站建设
  • 建设网站需要注意什么问题设计网页通常使用什么语言
  • 彩票网站建设要多少钱西安英文网站建设
  • 静态班级网站印象云笔记 wordpress
  • 网站表单及商品列表详情模板永川网站制作联系电话
  • 网站建设与维护难不难网络服务机构的网站
  • 用三权重的网站做友链有好处没企业年金怎么查询
  • 工行网站跟建设网站区别wordpress加入地图
  • 网站的风格对比信息表广告门
  • 教育网站建设毕业设计说明书门户网站模式
  • 洛阳霞光建设网站html做分模块的网站
  • 域名建议网站wordpress 伪静态html
  • 网站风格化设计方案免费模式营销案例
  • 凤翔网站建设农村建设自己的网站首页
  • 怎样用网站做单笔外贸建筑设计公司合作加盟
  • 建网站买的是什么网站开发三层结构
  • wordpress图纸管理网站2345网址导航智能主版
  • 想调用等三方网站数据该怎么做培训课程
  • 高端营销网站建设wordpress咨询
  • 网站搜索框如何做创业怎么做网站
  • 网站手机版管理链接产品推广找哪家公司
  • vuejs 可做网站吗蜘蛛互联网站建设
  • 沈阳网站备案查询17zwd一起做业网站
  • 石家庄大型公司建站广州设计网站培训学校