根据发布模式下的文档,Bundler应该使用.min.js文件(如果存在)。我按以下方式添加角度:
bundles.Add(new ScriptBundle(Bundles.Scripts).Include(
"~/Content/Scripts/angular.js"));
我在同一个文件夹中有angular.js和angular.min.js。所以根据我的理解,bundler应该只使用angular.min.js并且不做任何事情。但是当我在http响应中检查结果时,它会有所不同。它也缩小了,但所有的名字都不同:
我在浏览器中获得了什么:
(function(n,t,i){"use strict";function v(n)
Angular.min.js
(function(P,X,u){'use strict';function M(b)
有人可以解释为什么会这样吗?捆绑器是否只是忽略.min文件,或者它再次缩小.min.js?
P.S。我试图删除angular.js文件,然后我得到一个空结果,所以看起来捆绑器根本不关心angular.min.js存在。
答案 0 :(得分:5)
似乎在ScriptBundle的情况下,库没有做它应该做的事情,并试图缩小任何文件。我将它改为Bundle,这似乎可以解决问题并加载预先标记的版本。
答案 1 :(得分:1)
请将项目中的正常和缩小版本的脚本放在同一文件夹下,如
script.js
script.min.js
您只在代码中的捆绑包中添加script.js
。
因此,script.js
模式中包含DEBUG
,RELEASE模式中包含script.min.js
。
Microsoft MVC4平台认为您至少拥有两者 缩小版和每个脚本或样式的未经编辑的版本 Bundle(Debug和vsdoc等其他文件也可用)。