有没有办法使AngularJS负载分支在开始,而不是在需要时?

前端之家收集整理的这篇文章主要介绍了有没有办法使AngularJS负载分支在开始,而不是在需要时?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个这样的路由设置:
var myApp = angular.module('myApp',[]).
    config(['$routeProvider',function ($routeProvider) {
    $routeProvider.
        when('/landing',{
            templateUrl: '/landing-partial',controller: landingController
        }).
        when('/:wkspId/query',{
            templateUrl: '/query-partial',controller: queryController
        }).
        otherwise({
            redirectTo: '/landing'
        });
}]);

我想要能够使angularjs在开始下载两个partials而不是当请求时。

可能吗?

是的,至少有两个解决方案:

>使用脚本指令(http://docs.angularjs.org/api/ng.directive:script)将您的部分放在最初加载的HTML中
>如果需要,您还可以从JavaScript填写$ templateCache(http://docs.angularjs.org/api/ng.$templateCache)(可能基于$ http调用的结果)

如果你想使用方法(2)填写$ templateCache,你可以这样做:

$templateCache.put('second.html','<b>Second</b> template');

当然模板内容可能来自$ http调用

$http.get('third.html',{cache:$templateCache});

这里是plunker那些技术:http://plnkr.co/edit/J6Y2dc?p=preview

原文链接:https://www.f2er.com/angularjs/147675.html

猜你在找的Angularjs相关文章