Javascript AngularJS缩小的js文件不工作
我缩小并合并了所有的js文件在一个html中,并没有任何东西是在网站上工作 有这么多的文件在js和我不想包括所有的一个一个,所以修改和合并都在一个Javascript AngularJS缩小的js文件不工作,javascript,php,jquery,angularjs,minify,Javascript,Php,Jquery,Angularjs,Minify,我缩小并合并了所有的js文件在一个html中,并没有任何东西是在网站上工作 有这么多的文件在js和我不想包括所有的一个一个,所以修改和合并都在一个 有没有其他方法可以减少对js文件的http调用数量。缩小AngularJS文档时,遵循文档进行依赖性注入非常重要,否则代码可能会中断。您应该确保使用的是首选的数组方法。下面是一个示例: someModule.controller('MyController', ['$scope', 'greeter', function($scope, gre
有没有其他方法可以减少对js文件的http调用数量。缩小AngularJS文档时,遵循文档进行依赖性注入非常重要,否则代码可能会中断。您应该确保使用的是首选的数组方法。下面是一个示例:
someModule.controller('MyController', ['$scope', 'greeter', function($scope, greeter) {
// ...
}]);
正如官方AngularJS文档所示:。缩小AngularJS文档时,遵循文档进行依赖性注入非常重要,否则代码可能会中断。您应该确保使用的是首选的数组方法。下面是一个示例:
someModule.controller('MyController', ['$scope', 'greeter', function($scope, greeter) {
// ...
}]);
正如官方的Angular JS文档所示:.如果您有这样的控制器,请继续关注@dayle salmon的答案
app.controller('DemoCtrl', function(dependency1, dependency2){
// controller code
});
换成
app.controller('DemoCtrl', ['dependency1', 'dependency2', function(dependency1, dependency2){
// controller code
}]);
ReasonJS小型化工具通常会更改注入的依赖项的名称。而且Angular也不知道依赖关系是什么。所以,您可以手动声明它们,这样缩小后就不会出现问题 继续@dayle salmon的回答,如果你有这样的控制器
app.controller('DemoCtrl', function(dependency1, dependency2){
// controller code
});
换成
app.controller('DemoCtrl', ['dependency1', 'dependency2', function(dependency1, dependency2){
// controller code
}]);
ReasonJS小型化工具通常会更改注入的依赖项的名称。而且Angular也不知道依赖关系是什么。所以,您可以手动声明它们,这样缩小后就不会出现问题 看来,这是一个原因。根据Angular JS文档: 小心:如果你计划缩小你的代码,你的服务名称将被重命名并破坏你的应用程序 改用。例如:
angular
.module("MyModule")
.controller("MyCtrl", ["$scope", "$timeout", function ($scope, $timeout) {
...
}]);
更进一步,考虑使用这更容易:
angular
.module("MyModule")
.controller("MyCtrl", function ($scope, $timeout) {
"ngInject";
...
});
看来,这是一个原因。根据Angular JS文档: 小心:如果你计划缩小你的代码,你的服务名称将被重命名并破坏你的应用程序 改用。例如:
angular
.module("MyModule")
.controller("MyCtrl", ["$scope", "$timeout", function ($scope, $timeout) {
...
}]);
更进一步,考虑使用这更容易:
angular
.module("MyModule")
.controller("MyCtrl", function ($scope, $timeout) {
"ngInject";
...
});
你能分享一下你是如何定义你的控制器的吗?你可以尝试使用CDN来减少每个域的呼叫数量,但是缩小和合并应该可以很好地工作,我使用带有Angular JS的网页,没有问题。请参阅plunker link@Greatym.com,你最终成功了吗?你能分享一下你是如何定义你的控制器的吗?你可以尝试使用CDN来减少每个域的调用数,但是缩小和合并应该可以很好地工作,我使用带有Angular JS的webpack没有问题。请看plunker链接@Greatym.com,你最终成功了吗?我管理了依赖关系。我缩小并合并了所有js文件。angular js未定义。@Greatym.com,请评论或删除
app/ctrl/autoQuoteCtrl.js
文件中的第九行angular.element
无法按照您实现的方式工作,因为默认情况下使用的是jqLite,而不是jQuery.I管理的依赖项。我缩小并合并了所有js文件。angular js未定义。@Greatym.com,请评论或删除app/ctrl/autoQuoteCtrl.js
文件中的第九行angular.element
无法按照您实现的方式工作,因为默认情况下使用的是jqLite,而不是jQuery。