导航钩子

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div id="app">
    <div>
        <router-link to="/">首页</router-link>
        <router-link to="/login">用户登录</router-link>
        <router-link to="/post">帖子管理</router-link>
    </div>
    <div>
        <router-view></router-view>
    </div>
</div>
<script src="../../lib/vue.js"></script>
<script src="../../lib/vue-router.js"></script>
<script src="js/main.js"></script>
</body>
</html>
复制代码
复制代码
var routes = [
    {
        path: "/",
        component: {
            template: `
            <h1>首页管理</h1>
            `
        }
    },
    {
        path: "/login",
        component: {
            template: `
            <h1>用户登录</h1>
            `
        }
    },
    {
        path: "/post",
        component: {
            template: `
            <h1>帖子管理</h1>
            `
        }
    },

];

var router = new VueRouter({
    routes: routes
});
router.beforeEach(function (to,from ,next) {   //类似于中间件 ,访问之前做判断
    var logged_in = false;                      //用户未登录状态
    if(!logged_in && to.path == "/post")        //如果用户未登录且要跳转到post页面
        next("/login");
    else
        next()           //正常执行
});
router.afterEach(function (to,from) {
    //执行完之后要执行的函数
})
new Vue({
    el: "#app",
    router: router
})
复制代码

 

posted @   一石数字欠我15w!!!  阅读(195)  评论(0编辑  收藏  举报
编辑推荐:
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
点击右上角即可分享
微信分享提示