我无法让这部分代码在 IE 中运行。
它在 Chrome 和 Firefox 中工作正常,但 IE 在 lambda 表达式上抛出“严重错误”。因此,在 IE 中分页会中断,但在其他浏览器中却可以正常工作。
代码的目的是在将 JavaScript 时间戳加载到页面上的可编辑字段之前过滤掉它们。它还只从每个对象中选择所需的数据,而不是加载所有数据。我只是不确定 IE 中存在什么问题以及如何解决它。
ContractsService.getRefRFRInformation()
.then(function (results) {
var rfrInfo = results.data.map(x => ({
rfrInformationID: x.rfrInformationID,
fiscalYear: x.fiscalYear,
rfrNumber: x.rfrNumber,
startDate: ($filter('date')(new Date(x.startDate), 'MM/dd/yyyy')),
endDate: x.endDate ? ($filter('date')(new Date(x.endDate), 'MM/dd/yyyy')) : "",
modificationDate: x.modificationDate, modifiedBy: x.modifiedBy
}))
$scope.refRFRInfo = rfrInfo;
感谢任何帮助,谢谢。
最佳答案
Lambda 或箭头函数是 ES6 规范的一部分,Internet Explorer 不支持。 this MDN link中提到了这一点。您需要更改代码并以旧方式传递函数。
results.data.map(function(x) { ... });
有关更多详细信息,您可以在 this link 中查看 ES6 引入的功能有哪些。 。 Internet Explorer 或其他较旧的浏览器不支持这些。
关于javascript - Object.map lambda 代码可以在 Chrome、Firefox 中运行,但不能在 IE 中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57007103/