EnableOptimizations = True会破坏javascript

时间:2015-05-21 00:49:49

标签: javascript minify visual-studio-2015

我正在使用VS 2015 RC,Mindscape Webtools来缩小javascript文件并编译LESS文件,Typescript来创建我的所有JS文件。

当我在模式中工作时#34; EnableOptimizations = False "调试后一切正常。但是当我使用" EnableOptimizations = True "我收到javascript错误。由于JS代码全部缩小,正如我希望在EnableOptimizations = True时发生的那样,我无法弄清楚Javascript调试器中出现错误的原因。

不完全确定如何解决此问题。任何想法都非常感激。我能想到的是,缩小过程会产生错误的结果。

这是我的捆绑配置文件:

 bundles.Add(
        New ScriptBundle("~/bundles/javascripts").Include(
            "~/Scripts/jquery-{version}.js",
            "~/Scripts/jquery-ui.js",
            "~/Scripts/jquery.cookie.js",
            "~/Scripts/jquery.ui.datepicker-es.js",
            "~/Scripts/jquery.anystretch.js",
            "~/Scripts/icheck.js",
            "~/Scripts/jquery.formatCurrency-1.4.0.js",
            "~/Scripts/collections.js",
            "~/Scripts/jquery.mask.js"
            "~/Scripts/jquery.formatCurrency-1.4.0.js",
            "~/Scripts/jquery.creditCardValidator.js",
            "~/Scripts/Project1/*.js",
            "~/Scripts/MasterJS/*.js"))

**some other bundling of css **

BundleTable.EnableOptimizations = True

Daniel A. White询问是什么类型的错误。它们如下所示,特别是我在javascript中设计的模块:

  

未捕获的TypeError:无法设置属性' imgCount'未定义的

     

未捕获的TypeError:无法读取属性' init'未定义的

当EnableOptimizations设置为" false时,不会发生这些错误。"

1 个答案:

答案 0 :(得分:0)

经过一个繁琐的消除过程后,我能够确定,是的,实际上问题是对缩小的过程有影响。当我设置EnableOptimizations = True时,所有缩小的javascript文件自然地被制作成一个JS文件。但是缩小的文件不是原始JS文件的最近缩小版本。因此,当EnableOptimizations = True

时,会遇到伪造的错误

问题似乎是,当您使用Typescript时,将自动生成JS文件,但这并不一定会触发JS文件的重新缩小。这似乎是Mindscape Webtools的错 - 当一个JS文件被Typescript更改时,它不会触发重新缩小。