处理有关与 WebPack 串联的文件顺序?
Handling files order regarding concatenation with WebPack?
使用 Angular 时的一个好习惯是将模块定义与该模块的每次使用分开(每个文件一次使用)。
例如:
//HomeModule.js
angular.module('home', []);
//HomeService.js
angular.module('home')
.service('HomeService', HomeService);
经典问题与文件串联有关:
如果在最终文件中 HomeModule.js
之前注入 HomeService.js
,则会导致此错误:
Uncaught Error: [$injector:modulerr]
使用 gulp,有一个方便的 gulp-angular-sort 可以为我们管理它。
在处理WebPack和文件拼接时如何处理Angular文件排序,以防止这种混乱?
我不同意,这一行.service('HomeService', HomeService);
属于模块,而不是服务。所以你有以下设置:
HomeService.service.js:
export default ['$timeout', ..., ($timeout, ...) => { /*some code*/}]
HomeModule.js:
import HomeService from 'HomeService.service.js'
angular.module('home', [])
.service('HomeService', HomeService);
在这种情况下,您的订单没有任何问题。
使用 Angular 时的一个好习惯是将模块定义与该模块的每次使用分开(每个文件一次使用)。
例如:
//HomeModule.js
angular.module('home', []);
//HomeService.js
angular.module('home')
.service('HomeService', HomeService);
经典问题与文件串联有关:
如果在最终文件中 HomeModule.js
之前注入 HomeService.js
,则会导致此错误:
Uncaught Error: [$injector:modulerr]
使用 gulp,有一个方便的 gulp-angular-sort 可以为我们管理它。
在处理WebPack和文件拼接时如何处理Angular文件排序,以防止这种混乱?
我不同意,这一行.service('HomeService', HomeService);
属于模块,而不是服务。所以你有以下设置:
HomeService.service.js:
export default ['$timeout', ..., ($timeout, ...) => { /*some code*/}]
HomeModule.js:
import HomeService from 'HomeService.service.js'
angular.module('home', [])
.service('HomeService', HomeService);
在这种情况下,您的订单没有任何问题。