gpt4 book ai didi

angularjs - 预加载 ng-view 以实现更顺畅的导航

转载 作者:行者123 更新时间:2023-12-03 06:25:04 24 4
gpt4 key购买 nike

我正在使用 $location.path() 在我的 Angular 网站内加载新 View 。我的页面如下所示:

<html>
<head>
</head>
<body>
<div data-ng-view="" ></div>
</body>
</html>

我根据需求(索引、主页、登录等)更改 ng-view。有时导航看起来很慢(页面内出现一些小故障,持续 0.1 秒)有没有办法让导航即时进行?

此外,我尝试了 ng-animate,它改善了这种感觉,但并不完全。我想预加载我的“ View ”将是一种解决方案..

编辑:

添加后感觉有所改善:

myApp.run(function ($templateCache, $http) {
$http.get('Template1.html', { cache: $templateCache });
});

最佳答案

您可以使用更高级的库来管理状态和 View ,例如 Angular UI Router .

它支持在渲染之前预加载嵌套状态所需的每个资源(通过resolve属性),以避免界面闪烁,但您也可以单独加载您想要的每个资源在您呈现 View 之后。如果您不想重构您的应用程序以使用 ui-router (在我看来,这使每个应用程序都更易于管理),那么您将不得不使用 $templateCache 并手动管理 View 资源。

您可以尝试做的一个技巧是让 View 的 Controller 在渲染后加载它所需的资源。另外,也许您的应用程序 View 中有重复的部分,请尝试将它们提取到单独的模板中,并在可以的情况下重复使用它们。如果您可以以这样的方式拆分您的应用程序,使其不会在每次更改 View 时重新渲染所有内容,则可能会对渲染速度产生有益的影响。

关于angularjs - 预加载 ng-view 以实现更顺畅的导航,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23220363/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com