javascript - Ajax Minifier (AjaxMin) - JavaScript 的 EvalTreatment?

标签 javascript c# ajax asp.net-ajax

所以我只是在我的项目中使用默认设置对所有 js/css 文件的每个构建/部署中的 AjaxMin.dll 进行缩小。事实证明这是一个坏主意。我们拥有的第三方 javascript 文件之一有一个很好的 eval 语句,其中引用了一些变量或参数。当它被缩小时,原始变量会被重命名,而不会在 eval 语句中重命名。这在生产中造成了一个很大的旧错误(FML)。

我决定需要为缩小过程选择更安全的设置。

关于 AjaxMin 的文档非常不清楚。 http://www.asp.net/ajaxlibrary/AjaxMinWithAndEval.ashx

也许我只是不明白。我使用的是代码(带有 DLL)而不是命令行。

CodeSettings类有一个 EvalTreatment类选项,但我不确定什么是最好的选择......

来自 Microsoft(DLL 源):

using System;

namespace Microsoft.Ajax.Utilities
{
    public enum EvalTreatment
    {
        Ignore = 0,
        MakeImmediateSafe = 1,
        MakeAllSafe = 2,
    }
}

我在想MakeImmediateSafe (1) 或MakeAllSafe (2)?你们有什么感想?

提前致谢!

最佳答案

如果您想绝对确定缩小的结果始终有效,请使用MakeAllSafe选项。这将确保 eval 语句范围内的变量以及任何父范围内的变量都不会被重命名。

关于javascript - Ajax Minifier (AjaxMin) - JavaScript 的 EvalTreatment?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5888580/

相关文章:

javascript - 当用户在文本框中输入内容时替换段落中的文本

javascript - 如何使用Javascript将带有元音变音的单词的第一个字母变成大写?

c# - 以编程方式添加边界字段

php - 自动完成并重新排列分区

php - 通过 JavaScript 中的 ajax 调用在 laravel 中设置 var session ,并通过另一个调用获取相同的 var 值

javascript - Bootstrap 下拉菜单在悬停时无法正常工作

javascript - 页面加载后PHP可以运行吗?

c# - WPF MVVM : Calling a method in view model from a converter

c# - MVVMLight ViewModelLocator 创建新的 ViewModel

javascript - jquery ajax php/mysql - 使用 _POST 方法的简单注册表单