Tôi đang tạo ứng dụng Angular đầu tiên của mình và tôi sẽ tìm hiểu vai trò của các trình tải mô-đun là gì. Tại sao chúng ta cần chúng? Tôi đã cố gắng tìm kiếm và tìm kiếm trên Google và tôi không thể hiểu tại sao chúng ta cần cài đặt một trong số họ để chạy ứng dụng của mình?
Nó không đủ để chỉ sử dụng import
để tải công cụ từ các mô-đun nút?
Tôi đã làm theo hướng dẫn này (sử dụng SystemJS) và nó khiến tôi sử dụng systemjs.config.js
tệp:
/**
* System configuration for Angular samples
* Adjust as necessary for your application needs.
*/
(function(global) {
// map tells the System loader where to look for things
var map = {
'app': 'transpiled', // 'dist',
'@angular': 'node_modules/@angular',
'angular2-in-memory-web-api': 'node_modules/angular2-in-memory-web-api',
'rxjs': 'node_modules/rxjs'
};
// packages tells the System loader how to load when no filename and/or no extension
var packages = {
'app': { main: 'main.js', defaultExtension: 'js' },
'rxjs': { defaultExtension: 'js' },
'angular2-in-memory-web-api': { main: 'index.js', defaultExtension: 'js' },
};
var ngPackageNames = [
'common',
'compiler',
'core',
'forms',
'http',
'platform-browser',
'platform-browser-dynamic',
'router',
'router-deprecated',
'upgrade',
];
// Individual files (~300 requests):
function packIndex(pkgName) {
packages['@angular/'+pkgName] = { main: 'index.js', defaultExtension: 'js' };
}
// Bundled (~40 requests):
function packUmd(pkgName) {
packages['@angular/'+pkgName] = { main: '/bundles/' + pkgName + '.umd.js', defaultExtension: 'js' };
}
// Most environments should use UMD; some (Karma) need the individual index files
var setPackageConfig = System.packageWithIndex ? packIndex : packUmd;
// Add package entries for angular packages
ngPackageNames.forEach(setPackageConfig);
var config = {
map: map,
packages: packages
};
System.config(config);
})(this);
Tại sao chúng ta cần tập tin cấu hình này?
Tại sao chúng ta cần SystemJS (hoặc WebPack hoặc những người khác)?
Cuối cùng, theo bạn thì cái gì tốt hơn?