Javascript 缩小会导致FF和IE中的重新声明错误

Javascript 缩小会导致FF和IE中的重新声明错误,javascript,asp.net,minify,Javascript,Asp.net,Minify,我们在NuGet软件包Microsoft.AspNet.Web.Optimization提供的缩小方面遇到了问题,因为它似乎在let方面存在问题。以某种方式,minifier将变量bookingDefaultIndex和i的名称设置为相同的名称(i)。这使得Firefox和IE 11报告范围问题(Firefox报告SyntaxError:redclaration of let i,IE 11报告let/Const redclaration),因为变量已经定义。没有缩小,代码在IE和FF中运行良好

我们在NuGet软件包
Microsoft.AspNet.Web.Optimization
提供的缩小方面遇到了问题,因为它似乎在
let
方面存在问题。以某种方式,minifier将变量
bookingDefaultIndex
i
的名称设置为相同的名称(
i
)。这使得Firefox和IE 11报告范围问题(Firefox报告
SyntaxError:redclaration of let i
,IE 11报告
let/Const redclaration
),因为变量已经定义。没有缩小,代码在IE和FF中运行良好。Chrome报告说缩小代码没有问题

在下面的代码片段中,我用以
/[SO-comment]
开头的注释标记了相关行,因此您可以搜索该注释以查看有问题的行

这是导致问题的未统一函数:

\u handledLvaluesByContext:函数(){
if(this.options.isCreate){
if(this.options.isChildCreation){
//如果我们正在创建一个子对象->
this.ddlBookingType.val(this.options.data.BookingTypeID);
this.ddlAllocationUnit.val(this.options.data.AllocationUnitID);
this.ddlEffortAllocationUnit.val(this.options.data.AllocationUnitID);
if(this.options.data.ServiceCategoryID==null){
此.ddlServiceCategory.val('-1').trigger('change');
if(this.options.data.PricePerUnit!=null){
这个.structureRate.val(GetFormat(this.options.data.PricePerUnit));
}
}否则{
this.ddlServiceCategory.val(this.options.data.ServiceCategoryID.trigger('change');
}
//如果我们正在创建一个子系统,则在其会计类型之前先填充父系统会计类型
if(this.options.data.AccountingTypeID==null){
此.ddlAccountingType.val('-1').trigger('change');
}否则{
this.ddlAccountingType.val(this.options.data.AccountingTypeID.trigger('change');
}
}否则{
//如果是父级创建->
让bookingTypes=this.options.structureSpecificData.bookingTypes;
让bookingDefaultID=null;
//[SO-COMMENT]以下变量缩小为“i”
让bookingDefaultIndex=null;
for(设i=0,len=bookingTypes.length;i
this.ddlBookingType.val(this.options.data.BookingTypeID);
this.ddlAllocationUnit.val(this.options.data.AllocationUnitID);
this.ddlEffortAllocationUnit.val(this.options.data.AllocationUnitID);
if(this.options.data.IsParentElement){
此.ddlServiceCategory.val('-1').trigger('change');
//我们必须对照NaN类型进行检查,因为工作和总成本可能属于该类型
//如果我们有一个固定价格的会计类型的结构层次结构,因此没有努力和成本
if(isNaN(this.options.structureTottalCost)){
此.$structureTottalCost.val(“”);
}否则{