Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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
Angularjs 如何将angular-route.js从使用Ajax改为使用脚本加载分区标记?_Angularjs_Security_Single Page Application_Offline_Angular Routing - Fatal编程技术网

Angularjs 如何将angular-route.js从使用Ajax改为使用脚本加载分区标记?

Angularjs 如何将angular-route.js从使用Ajax改为使用脚本加载分区标记?,angularjs,security,single-page-application,offline,angular-routing,Angularjs,Security,Single Page Application,Offline,Angular Routing,我正在用AngularJS制作一个移动、AngularJS、跨浏览器、离线spa,使用angular-route.js,完全不用服务器。我觉得更改浏览器默认值以允许Ajax加载本地文件对我的情况来说是不可接受的。理想情况下,我希望有一个外部库代码,允许通过脚本标记src属性操作加载文件。但是,如果我知道最好的版本+文件+行,我愿意探索修改或扩展开源库文件,如angular-route.js 似乎您需要使用,您可以使用标记直接在html中指定模板 当然,您可能希望将每个部分放在一个单独的文件中,在

我正在用AngularJS制作一个移动、AngularJS、跨浏览器、离线spa,使用angular-route.js,完全不用服务器。我觉得更改浏览器默认值以允许Ajax加载本地文件对我的情况来说是不可接受的。理想情况下,我希望有一个外部库代码,允许通过脚本标记src属性操作加载文件。但是,如果我知道最好的版本+文件+行,我愿意探索修改或扩展开源库文件,如angular-route.js

似乎您需要使用,您可以使用标记直接在html中指定模板


当然,您可能希望将每个部分放在一个单独的文件中,在这种情况下,您必须添加一个任务,使$templateCache可以使用这些部分。有一些插件可以为您实现这一点,请看。

也许我希望这是不可能的,但我希望延迟加载该部分,并在视图更改或程序员确定的事件时将其从内存中删除。grunt方法似乎是一次预加载所有部分。有人知道可以做我想做的事情的插件/库吗?我将结合document.write探索$routeStateChange。您能用一个代码示例更新您的问题吗?我不确定我是否理解您所说的使用标记延迟加载部分,然后从内存中删除的意思?Tho,我得到的印象是,您可以通过手动请求并从angular中删除模板来实现您想要的。您可以使用手动请求模板,它们将自动添加到$TemplateCache。标准路由是否利用相同的$templateRequest?你的帖子帮助我缩小了基本问题的起因,需要更多地调试成角度文件。我不能使用$templateRequest,因为它依赖于Ajax。发布任何代码都需要几周的时间,因为这是一种爱好,而不是我的工作。我现有的代码在当前状态下是不值得发布的,因为它还没有考虑到我从这个线程中学到的东西。如果可能的话,我会再发一次。谢谢。伪造$templateCache,类似于下面的,有一些我想要的。我将看看是否可以替换Ajax调用,使用其中的部分/模板数据将脚本标记动态插入DOM。我想我明白了,您不能使用Ajax请求并优化内存使用,您不希望加载所有模板。您可以使用grun ng template之类的插件生成模板,该插件将创建一个脚本文件,将模板添加到$templateCache,但每个模板创建一个文件。这样,当您动态添加标记时,意味着您将加载模板,要从内存中删除它,您只需从$templateCache中删除它
<script type="text/ng-template" id"path/to/template.html">...</script>