这是我在app.js中的内容 -
var app = angular.module("app", []);
在我的controller.js中,我有 -
app.service("Store", function() {
this.products = { item: "apple" };
});
app.controller("AppCtrl", function ($scope, Store) {
$scope.products = Store.products;
})
当我通过ngmin运行时,我得到了这个 -
var app = angular.module('app', []);app.service('Store', function () {
this.products = { item: 'apple' };
});
app.controller('AppCtrl', function ($scope, Store) {
$scope.products = Store.products;
});
正如您所看到的,它没有正确地注释依赖项。但是,如果我在controller.js中有var app = angular.module("app", []);
,它就可以正常工作 -
var app = angular.module('app', []);
app.service('Store', function () {
this.products = { item: 'apple' };
});
app.controller('AppCtrl', [
'$scope',
'Store',
function ($scope, Store) {
$scope.products = Store.products;
}
]);
如何让ngmin
使用单独的文件?
答案 0 :(得分:1)
官方ngmin doc州
理想情况下,您应该连接所有文件,然后在连接文件上运行一次ngmin。
我不确定,但我认为这是ngmin使用的库astral-angular-annotate的技术限制。模块声明过于严格。
在我工作的地方,在我们的Gruntfile中,我们先用grunt/concat连接所有文件,然后在生成的文件上运行grunt/ngmin。因此,我们只需要在我们的webapp正文中包含一个<script>
元素,这非常方便。