相关疑难解决方法(0)

如何为 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
查看次数

如何使用 Puppeteer 收听 history.pushstate?

使用 Puppeteer,是否可以收听浏览器历史 API,例如history.pushStatehistory.replaceStatehistory.popState,通常由单页应用程序框架路由器react-router在后台使用,例如,通过视图来回导航?
我不是在寻找page.waitForNavigation(options),因为它并不是真正意义上的导航,也不是倾听者。
此外,我希望能够捕获传递给历史函数的参数,例如data,titleurl

javascript ecmascript-6 puppeteer

4
推荐指数
1
解决办法
2043
查看次数