Javascript Framework7和单页应用程序:预加载所有页面
我正在使用Framework7构建一个web应用程序 我知道Framework7提供了路由API来浏览HTML页面Javascript Framework7和单页应用程序:预加载所有页面,javascript,jquery,html,css,html-framework-7,Javascript,Jquery,Html,Css,Html Framework 7,我正在使用Framework7构建一个web应用程序 我知道Framework7提供了路由API来浏览HTML页面 据我所知,页面是通过AJAX请求动态加载的。是否有可能预加载所有这些文件,然后再没有任何AJAX请求?我想构建一个单页应用程序(SPA),其中所有数据(HTML页面、CSS和JavaScript代码)都是在启动时加载的我认为他们没有像您的问题那样直接解决问题的方法,因为每一条路线在您访问它时都会触发请求,但您可以尝试通过以下技巧解决问题: 声明全局或辅助js文件 声明后,在其中
据我所知,页面是通过AJAX请求动态加载的。是否有可能预加载所有这些文件,然后再没有任何AJAX请求?我想构建一个单页应用程序(SPA),其中所有数据(HTML页面、CSS和JavaScript代码)都是在启动时加载的我认为他们没有像您的问题那样直接解决问题的方法,因为每一条路线在您访问它时都会触发请求,但您可以尝试通过以下技巧解决问题:
module.exports.tmpAppCache = {
fullCadaverList: false,
fullImagesList: false,
fullVideosList: false,
fullPdfList: false,
};
{
path: '/pdf/',
async: function (routeTo, routeFrom, resolve, reject) {
if(globalObject.tmpAppCache.fullPdfList !== false){
resolve(
{
component: pdfPage,
},
{
context: {
data: globalObject.tmpAppCache.fullPdfList
}
}
);
}else{ getFullPdfList()
}
},
},
我有一个ajax-helper.js文件,它也是在路由之前加载的,并且有一些方法
像这样:
export function getFullPdfList() {
// Your ajax request here
}
在routes中,有以下代码:
module.exports.tmpAppCache = {
fullCadaverList: false,
fullImagesList: false,
fullVideosList: false,
fullPdfList: false,
};
{
path: '/pdf/',
async: function (routeTo, routeFrom, resolve, reject) {
if(globalObject.tmpAppCache.fullPdfList !== false){
resolve(
{
component: pdfPage,
},
{
context: {
data: globalObject.tmpAppCache.fullPdfList
}
}
);
}else{ getFullPdfList()
}
},
},
这个来自真实项目的示例,我尝试删除所有不需要的代码,使之清晰,以便有一些注意事项: