有没有一种方法可以自定义Asp.Net MVC4捆绑和缩小功能缩小js文件的方式?
意思是,我不想完全关闭缩小功能,但是“按原样”只会破坏AngularJs。
由于AngularJs使用DI和IoC方法在控制器中注入服务,因此以下内容:
function MyController($scope) { }
一旦缩小,将变为:
function MyController(n) { }
通常,这不是问题,但是AngularJs使用参数名称来了解要注入的服务。因此,$scope和角度控制器中的任何其他参数都应保留为$scope。其他所有内容,例如局部变量等,都应正常缩小。
我找不到任何有关如何配置Mvc4缩小的清晰文档,而且它看起来“全有还是全无”显得有些愚蠢,所以我想我缺少了一些东西。
谢谢。
实际上,您可以(并且应该!)编写AngularJS代码,因此它是“最小化的”。有关详细信息,请参见http://docs.angularjs.org/guide/di的“依赖关系注释”部分,但总之,对于全局定义的控制器,您可以编写:
MyController.$inject = ['$scope'];
请注意,全局定义的控制器被污染全局命名空间,应该避免。如果在模块级别上声明控制器,则也可以使其具有最小化安全性:
angular.module('mymodule', []).controller('MyController', ['$scope', function($scope){ //controller code goes here }]);