我正在使用Framework7构建Web应用程序。
我知道Framework7提供了路由API来浏览HTML页面。
https://framework7.io/docs/view.html#router-api-methods-properties
据我所知,页面是通过AJAX请求即时加载的。是否可以预加载所有这些文件,之后再没有任何AJAX请求?我想构建一个单页应用程序(SPA),其中所有数据(HTML页,CSS和JavaScript代码)都在启动时加载
答案 0 :(得分:1)
我认为他们没有像您的问题那样直接解决问题的方法,因为每条路线都会在您访问它时触发请求,但是您可以尝试通过以下技巧来解决问题:
来自真实项目的示例: 我有main-config.js,它在路由之前加载,并具有以下代码:
module.exports.tmpAppCache = {
fullCadaverList: false,
fullImagesList: false,
fullVideosList: false,
fullPdfList: false,
};
,我有一个ajax-helper.js文件,该文件也在路由之前加载,并且有方法 像这样:
export function getFullPdfList() {
// Your ajax request here
}
路线中的具有以下代码:
{
path: '/pdf/',
async: function (routeTo, routeFrom, resolve, reject) {
if(globalObject.tmpAppCache.fullPdfList !== false){
resolve(
{
component: pdfPage,
},
{
context: {
data: globalObject.tmpAppCache.fullPdfList
}
}
);
}else{ getFullPdfList()
}
},
},
此示例来自真实项目,我尝试删除所有不需要的代码以使其清晰可见,以便引起注意:
祝你好运