小编Lui*_*igi的帖子

如何为 SPA 创建一个 vanilla JS 路由?

我正在创建一个没有框架/工具/库的 Web 应用程序,所有的都是 Vanilla JS。我正在以更多的“反应”风格来做这件事。

我想调用我的 views/pages/dashboard.js 中的视图,显示该视图并在用户单击仪表板导航链接时更改 URL。这是导航栏:https : //codepen.io/Aurelian/pen/EGJvZW

也许将子导航项目集成到路由中会很好。如果用户在个人资料的 GitHub 文件夹中,我将如何在 URL 中显示它呢?

如何为此创建路由?

GitHub 存储库是https://github.com/AurelianSpodarec/JS_GitHub_Replica/tree/master/src/js

这是我尝试过的:

document.addEventListener("DOMContentLoaded", function() {
    var Router = function (name, routes) {
        return {
            name: name,
            routes: routes
        }
    };
    var view = document.getElementsByClassName('main-container');
    var myRouter = new Router('myRouter', [
        {
            path: '/',
            name: "Dahsboard"
        },
        {
            path: '/todo',
            name: "To-Do"
        },
        {
            path: '/calendar',
            name: "Calendar"
        }
    ]);
    var currentPath = window.location.pathname;
    if (currentPath === '/') {
        view.innerHTML …
Run Code Online (Sandbox Code Playgroud)

javascript routes single-page-application ecmascript-6

5
推荐指数
2
解决办法
7915
查看次数