Angular $templateCache在 Internet Explorer 中不起作用
Angular $templateCache Does Not Work in Internet Explorer
我在ie10中遇到了Angular的$templateCache问题,但在ie11中也是一个问题。它适用于Firefox,Chrome和Safari。
这是我在模板中的模板定义.js:
angular.module('app').run(['$templateCache', function($templateCache) {
'use strict';
$templateCache.put('/views/page.html',
"<div class='"page-header row'">'n" +
" <div class='"col-xs-6'">'n" +
" <span class='"heading title'">{{pageTitle}}</span>'n"
...
);
}]);
我将模板包含在<head>
页面顶部.js例如:
<script src="/js/templates.js"></script>
最后,我在路由定义中使用模板,如下所示:
angular.module('app', ['ngRoute'])
.config(['$routeProvider', function($routeProvider) {
$routeProvider
.when('/', {
redirectTo:'/page'
})
.when('/page', {
controller: 'pageController',
templateUrl:'/views/page.html'
})
.otherwise({
redirectTo:'/'
});
}]);
同样,它在Chrome,Firefox和Safari中运行良好,但不能在IE10中运行良好。我能想到提供的唯一其他信息是该应用程序不在根级别,它是 http://example.com/app 的。但模板确实存储在 http://example.com/views 中。
有什么想法吗?
编辑:这是一个在IE中实际工作的JSFiddle,但我不确定这是否是因为JSFiddle如何处理浏览器框架。如果将代码复制并粘贴到索引.html中,然后在服务器上运行它,则在IE中将不起作用。http://jsfiddle.net/v9sv7jdL/2/
在这种情况下,
我们实际上在IE应用程序中具有特殊的逻辑。它将 ?ts= 添加到我们请求的末尾,当然,模板缓存中不存在。
相关文章:
- 在Internet Explorer中,向所选内容添加选项不起作用
- 鼠标事件在 Internet Explorer 中不起作用
- 输入类型的图像在Internet Explorer中不起作用,但在Chrome和Firefox中起作用
- 包含jquery的Javascript在Internet Explorer中不起作用
- onClick和onClientClick事件一起使用.在Internet Explorer中不起作用
- Javascript图像动画在Firefox或Internet Explorer中不起作用
- 使用JS固定标题的表在Internet explorer中不起作用
- Angular $templateCache在 Internet Explorer 中不起作用
- 滑块图像在Internet Explorer中不起作用,但在其他浏览器中有效
- 带有 Internet Explorer 8/9 的 Editor Ace 不起作用
- Window.location 在 Internet Explorer 中不起作用
- Ajax POST 请求在 Internet Explorer 中不起作用
- 脚本在 Internet Explorer 中不起作用
- 在第二次加载时更改 iframe 样式,在 Internet Explorer 9 中不起作用
- 流体布局在 Internet Explorer 7 和 8 中不起作用
- blockUI 在 Internet Explorer 上不起作用
- Javascript在Internet Explorer上不起作用
- 屏幕键盘在 Internet Explorer 中不起作用
- jQuery 动画在 Internet Explorer 中不起作用
- 元标记中的JavaScript在Firefox和Internet Explorer上不起作用