$http.delete(\'/api/carts/\' + productCode).
success(function() {
cart.products = someMethod();
updateTotals();
}).
error(function() {
console.log(\'C
The problem is that delete
is a javascript keyword and IE8 parses it slightly incorrectly. According to the standard, identifiers can be called delete
. A quick fix is:
$http['delete']('/api/carts/' + productCode)
A little ugly, and I don't think the good angular people should have named that method delete, but that fixes your problem
$http.delete(path)
is a shortcut for DELETE
requests.
So as the shortcut breaks on IE8, besides calling by their uglly form: $http['delete']
, you can call using the original mode:
$http({method: 'DELETE', url: path})
delete is the JavaScript reserved keyword, and IE parse it as a keyword. Here is the solution. http://tech.pro/tutorial/1238/angularjs-and-ie8-gotcha-http-delete
Here is the javascript reserved keyword list
http://www.w3schools.com/js/js_reserved.asp
so its better to use $http['delete']
instead of $http.delete