当前位置: 首页 > 面试题库 >

有没有一种方法可以使AngularJS在开始时而不是在需要时加载局部变量?

谭毅然
2023-03-14
问题内容

我有这样的路由设置:

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在开始时而不是在要求时下载两个部分。

可能吗?


问题答案:

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

  1. 使用script指令(http://docs.angularjs.org/api/ng.directive:script)将您的局部文件放入最初加载的HTML中
  2. 如果需要,您也可以通过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});

这是那些笨拙的技术:http
://plnkr.co/edit/J6Y2dc?p=preview



 类似资料:
  • 问题内容: 我正在建立一个带有flask的网站,其中用户具有帐户并能够登录。我正在使用flask-principal作为登录部分和角色管理。有没有办法让用户的会话在5分钟或10分钟后过期?我在flask文档或flask-principal文档中找不到该文件。 我想到了一种手动方法,在登录时在服务器端设置一个带有时间标签的变量,并在用户执行下一个操作时,服务器会验证该时间戳记上的时间增量并删除会话。

  • 问题内容: 我正在建立一个带有flask的网站,其中用户具有帐户并能够登录。我正在使用flask- principal作为登录部分和角色管理。有没有办法让用户的会话在5分钟或10分钟后过期?我在flask文档或flask- principal文档中找不到该文件。 我想到了一种手动方法,在登录时在服务器端设置一个带有时间标签的变量,并在用户执行下一个操作时,服务器会验证该时间戳记上的时间增量并删除会

  • 问题内容: 嗨,我想使用WMI类来查找应用程序和产品信息。但是问题是我想使用Java或任何脚本语言(如python,javascript或perl)。我听说过JWMI,这可能是一个选择。有人可以帮我吗??? 问题答案: JavaScript和Java不是一回事。 JavaScript Windows脚本宿主(WSH)下提供了JavaScript。有了它,访问WMI相当容易: jWMI(Java)

  • 我正在使用ExtJS4,并试图在面板中创建一个按钮 这里我使用'btn-primary'来设置按钮的样式。但在生成的HTML中,代码如下所示 您可以看到类'btn-primary'被添加到它的容器中,一个div中,而不是按钮本身,这不是我想要的,这样,类就不会影响按钮。 那么有没有办法生成一个类设置在按钮本身上的按钮呢?或者有没有一种方法可以生成一个没有容器的纯按钮?提前道谢。

  • 问题内容: 我有一个过程密集型任务,我想在后台运行。 用户单击一个页面,PHP脚本运行,最后,根据某些条件(如果需要),它必须运行Shell脚本EG: 当前,我使用shell_exec, 但这 需要脚本等待输出。有什么方法可以执行我想要的命令, 而无需 等待命令完成? 问题答案: 如何添加。 请注意,这也摆脱了stdio和stderr。

  • 只是想知道在Android Studio中输入文本字段时,是否有一种方法可以自动在屏幕上显示文本? 例如,如果我输入一个数字,它会自动乘以20,结果显示在文本字段下方的屏幕上。