Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
何时不使用AJAX客户端路由?_Ajax_Angularjs_Client Side - Fatal编程技术网

何时不使用AJAX客户端路由?

何时不使用AJAX客户端路由?,ajax,angularjs,client-side,Ajax,Angularjs,Client Side,使用客户端路由(例如Angular的$routeProvider),可以一次加载整个web应用程序,而不再与服务器交互 然而,这可能意味着当访问者第一次打开web应用程序时(假设它有很多视图),加载时间很长 在客户端路由和初始加载时间方面,最佳实践是什么?angular的默认行为是加载整个应用程序前端。但这取决于你的应用程序做什么以及它有多大。如果它是一个小应用程序,你可以这样做。如果你的应用程序很大(考虑到应用程序只会显示一些静态数据,这不太可能),那么预先加载所有内容并不是一个好主意。对于一

使用客户端路由(例如Angular的
$routeProvider
),可以一次加载整个web应用程序,而不再与服务器交互

然而,这可能意味着当访问者第一次打开web应用程序时(假设它有很多视图),加载时间很长


在客户端路由和初始加载时间方面,最佳实践是什么?

angular的默认行为是加载整个应用程序前端。但这取决于你的应用程序做什么以及它有多大。如果它是一个小应用程序,你可以这样做。如果你的应用程序很大(考虑到应用程序只会显示一些静态数据,这不太可能),那么预先加载所有内容并不是一个好主意。对于一个较小的应用程序,这将是好的,尤其是如果你缩小一切。但是对于更大的应用程序,如果你有10MB的脚本和资源呢?您给服务器带来了很大的压力,并占用了客户的带宽。对于大型应用程序,您可以随着路由的变化动态加载脚本,我们在一个非常大的角度应用程序中也做了类似的事情

最好的做法是只获取生成要在特定路径上向用户显示的内容所需的文件,这与您想要做的是背道而驰的。关于“不再与服务器交互”,如果你的应用程序依赖服务器获取数据或进行身份验证,你就不能真正停止与服务器的交互。

谢谢。我将应用“1个路由=一次交付1组文件”