问题标签 [page.js]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 主线程上的同步 XMLHttpRequest 在 ASP.NET MVC 和 Page.js 中已被弃用
为了使我们的应用程序成为 SPA,我们使用了第三方库 Page.js 以及 ASP.NET MVC。
Page.js 参考: https ://visionmedia.github.io/page.js/
通过使用 Page.js 库,我们基本上执行了两个任务。
- 首先,我们在 MVC 应用程序上点击一些控制器/动作(部分视图),然后将返回的 HTML 注入 DOM。
- 其次,同时我们使用这个库改变浏览器的URL。
我们通过 Page.js 获取的所有 Partial Views 也有对<script/>
标签的引用。因此,每当我们将返回的 HTML 注入 DOM 时,我们就会开始在浏览器的控制台选项卡中看到弃用问题。
[弃用] 主线程上的同步 XMLHttpRequest 已弃用,因为它对最终用户的体验产生不利影响。如需更多帮助,请查看https://xhr.spec.whatwg.org/。
申请流程:
下图解释了我们的应用程序流程。
目前,所有子部分视图也都有自己的脚本,并且该脚本在注入 DOM 后立即执行。
尝试的方法作为解决此弃用问题的解决方案:
在通过 Page.js 库注入的每个局部视图(不是子视图)上,我们正在编写以下代码以异步加载所有依赖项。在回调函数中(一旦加载了所有依赖项),我们正在执行页面特定的 JavaScript 代码,如下所示。
通过 Ajax 注入 DOM 的 Page 的 HTML(即 Page Partial View):
重要:$.getMultipleScripts
取自这里 -如何使用 jQuery $.getScript() 方法包含多个 js 文件
子部分视图末尾的脚本如下所示:
注意:为此,我们还停止了子部分视图,以便在加载后立即执行 javascript 代码。事实上,我们现在只是在部分视图中提供 javascript 定义(以模块模式的形式)并从主页面(父部分视图)控制整个执行。
我知道这不是一个好方法。我们可以使用一些前端框架。但是在这个阶段,我们不能做出让整个框架转变的决定。
从这篇文章中,我只是想知道,这种方法是好的还是有更好的方法来解决这个问题。如果是,请分享。
javascript - page.js 库:如何启用 onbeforeunload?
我正在使用page.js作为路由器构建一个单页应用程序。在 SPA 中更改页面时,默认的window.onbeforeunload事件似乎不会触发。我怎样才能实现类似的东西,如果用户决定不继续,我可以有选择地取消页面转换?(即“您的更改未保存:可以放弃更改吗?”)
谢谢!
page.js - 如何使用 page.js 在不完全重新加载的情况下导航到 URL?
我想在提交表单后重定向用户而不重新加载页面(文档)。
我试过了,
当我单击链接<a href="./newurl/18/meetings">link</a>
时,它按预期工作。
javascript - Javascript 代码未使用 page.js 在我网站的一页上执行
编辑:@Mike 'Pomax' Kamermans,对链接缩短者感到抱歉,你是绝对正确的!
我在我的网站上的表单中添加了一个日期选择器,但它仅在我直接浏览页面时才有效,例如,如果您直接打开第一个链接(预订页面),日期选择器应该可以正常工作(这意味着没有错误在我刚刚添加的代码中)。
但是,如果您首先浏览到索引页面(链接 2)然后单击 Reservation,则使用 page.js librairie 加载该页面,并且似乎我的代码没有执行!
这是在我的 reservation.html 页面上的结束正文标记之前放置的代码的相关部分:
var cleave = new Cleave('#phone', { phone: true, phoneRegionCode: 'fr' });
目前唯一的解决方案是刷新页面以使日期选择器工作..
为什么我的 JS 没有执行?在这种情况下添加自定义 js 文件的正确方法是什么?
非常感谢所有阅读所有主题的人!
routes - Svelte page.js 路由 - 无法获取动态组件的传入道具
page.js
我的路由有问题。如果我从settings
到 a dashboard
,我会得到传入的道具。如果我从dashboard
一无所有dashboard
被注销...有人可以帮忙吗?
App.svelte
导航.svelte
仪表板.svelte
javascript - 如何在 SVELTE 中使用 page.js 并在编辑时保留动态路由内容
我将 page.js 与 SVELTE 一起使用,它可以工作。
问题:
我的应用程序允许用户通过表单存储数据,数据存储在 indexedDB 中(我正在使用 Dexie.js 与 IndexedDB 对话)。存储的数据用于创建动态路线。
例子:
用户提交称为“客户端”的数据,数据存储在 indexedDB 中:
然后,我创建如下所示的动态路由(使用 page.js):
问题如下,
当我在保存工作时转到动态路径并编辑构成页面的组件(甚至是 CSS)时,整个应用程序都会刷新。为了回到我的动态路线,我不能只输入 URL - 我必须返回登录页面,找到提交项目的链接,单击它并重定向到所需的页面。
有没有办法让这更容易,这样我就可以在不发生这种情况的情况下进行编辑?登陆页面和其他静态页面没有这个问题。
javascript - 尽管在 package.json 中传递了 --single 标志,但手动输入 URL 或刷新时,page.js 带有细长的“未找到请求的 URL”
我是整个 Javascript 和 svelte 生态系统的新手,我正在尝试使用 svelte.js 构建一个应用程序并使用烧瓶来服务它。问题是我The requested URL was not found
手动输入路径或刷新页面时遇到的问题。尽管在 package.json 中传递了 --single 标志,但仍会发生这种情况。奇怪的是,我只有在路由有相关参数时才会遇到这个问题,例如。/article/:id
. 但是,如果我手动输入路径/article
或刷新它,则没有问题。
这是 package.json 的片段
这是我的 App.svelte 文件的片段