我正在尝试使用ng-include和包含我的模板的html文件的路径来加载模板。这适用于Chrome和Firefox,但出于某种原因不适用于IE 11.
IE在角度1.3.5中的属性赋值上抛出错误TypeError: Object doesn't support this property or method
。特别是
xhr.onload = function requestLoaded() { ... }
xhr对象是常规new window.XMLHttpRequest()
,虽然我尝试使用ActiveXObject而不起作用。
我甚至不明白为什么(看似)简单的属性赋值会抛出这样的错误。我该如何解决这个问题?
编辑:
堆栈跟踪,如果它有所不同:
TypeError: Object doesn't support this property or method
at Anonymous function ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:9673:7)
at sendReq ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:9538:9)
at serverRequest ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:9255:9)
at processQueue ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:13077:11)
at Anonymous function ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:13093:27)
at Scope.prototype.$eval ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:14293:9)
at Scope.prototype.$digest ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:14109:15)
at Scope.prototype.$apply ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:14397:13)
at Anonymous function ((PATH-TO-JS-FOLDER)/angular-1.3.5.js:22829:17)
at o.event.dispatch ((PATH-TO-JS-FOLDER)/jquery-2.1.0.min.js:3:5999)
行号可能略有不同,但此处第9673行是包含xhr.onload =...
答案 0 :(得分:0)
作为最佳实践,使用angular时最好使用ajax方法中内置的角度。
示例:
$http.get('../urlpath').then(function(reponse){
$scope.data = response;
});
这是做同样的事情,但更强大并且针对性能进行了调整。
希望这有帮助