我从互联网上复制了一个功能。我不知道从哪里复制它。 但是,我今天在多个浏览器上测试代码,并在IE中遇到了sytax错误。
以下代码是麻烦制造者:
Object.keys($location.search()).forEach((key) => ($location.search()[key] == null || $location.search()[key] == "") && $location.search([key], null));
这段代码删除了keys
,而没有角度$location
对象中的值。
快速谷歌搜索后,我发现所有浏览器都不支持arrow functions。另请参阅此question。
我尝试用简单的=>
替换=
。但这并不起作用。
我现在的问题是,如何让上述代码在所有浏览器中运行?
答案 0 :(得分:2)
要替换箭头函数,您不能只使用=,您需要使用常规函数语句,如:
(param) => {
//code block
}
function(param) {
//code block
}
答案 1 :(得分:2)
您可以自己将其转换为function
或使用Babel之类的内容为您执行此操作
Object.keys($location.search()).forEach(function (key) {
return ($location.search()[key] == null || $location.search()[key] == "") && $location.search([key], null)
});
答案 2 :(得分:1)
只需使用匿名函数(请参阅forEach
上的文档):
Object.keys($location.search()).forEach(function (key) {
return ($location.search()[key] == null || $location.search()[key] == "")
&& $location.search([key], null);
});