systemjs 加载器在通过导入加载 angular 内部脚本文件时不包含 .js
systemjs loader does not include .js while loading angular internal script files by import
在我的 angular2 应用程序中,我试图从不同的服务器加载 javascript 编译的打字稿。当我尝试加载不带 .js 扩展名的 javascript 文件时,它会进行不带 .js 扩展名的休息调用并给出 404 错误。
error
VM9887:1274 GET http://localhost:9099/OfferFinder7oct/app/app.module 404 (Not Found)
in detail the error is the systemjs is trying to load http://localhost:3000/app/app.module as "./app.module" but unable to reach http://localhost:3000/app/main.js
System.import('app').catch(function(err){ console.error(err); });
//system.config.js
/**
* System configuration for Angular samples
* Adjust as necessary for your application needs.
*/
(function (global) {
System.config({
paths: {
// paths serve as alias
'npm:': 'node_modules/'
},
// map tells the System loader where to look for things
map: {
// our app is within the app folder
app: 'app',
// angular bundles
'@angular/core': 'npm:@angular/core/bundles/core.umd.js',
'@angular/common': 'npm:@angular/common/bundles/common.umd.js',
'@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
'@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js',
'@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js',
'@angular/http': 'npm:@angular/http/bundles/http.umd.js',
'@angular/router': 'npm:@angular/router/bundles/router.umd.js',
'@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
'@angular/upgrade': 'npm:@angular/upgrade/bundles/upgrade.umd.js',
// other libraries
'rxjs': 'npm:rxjs',
'angular-in-memory-web-api': 'npm:angular-in-memory-web-api',
},
// packages tells the System loader how to load when no filename and/or no extension
packages: {
app: {
main: './main.js',
defaultExtension: 'js'
},
rxjs: {
defaultExtension: 'js'
},
'angular-in-memory-web-api': {
main: './index.js',
defaultExtension: 'js'
}
}
});
})(this);
将 defaultExtension: 'js'
添加到您的配置主要部分。您的配置不理解没有任何扩展名的文件的默认扩展名。
新配置如下所示
(function (global) {
System.config({
defaultExtension: 'js',
paths: {
// paths serve as alias
'npm:': 'node_modules/'
},
// map tells the System loader where to look for things
map: {
在我的 angular2 应用程序中,我试图从不同的服务器加载 javascript 编译的打字稿。当我尝试加载不带 .js 扩展名的 javascript 文件时,它会进行不带 .js 扩展名的休息调用并给出 404 错误。
error
VM9887:1274 GET http://localhost:9099/OfferFinder7oct/app/app.module 404 (Not Found)
in detail the error is the systemjs is trying to load http://localhost:3000/app/app.module as "./app.module" but unable to reach http://localhost:3000/app/main.js
System.import('app').catch(function(err){ console.error(err); });
//system.config.js
/**
* System configuration for Angular samples
* Adjust as necessary for your application needs.
*/
(function (global) {
System.config({
paths: {
// paths serve as alias
'npm:': 'node_modules/'
},
// map tells the System loader where to look for things
map: {
// our app is within the app folder
app: 'app',
// angular bundles
'@angular/core': 'npm:@angular/core/bundles/core.umd.js',
'@angular/common': 'npm:@angular/common/bundles/common.umd.js',
'@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
'@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js',
'@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js',
'@angular/http': 'npm:@angular/http/bundles/http.umd.js',
'@angular/router': 'npm:@angular/router/bundles/router.umd.js',
'@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
'@angular/upgrade': 'npm:@angular/upgrade/bundles/upgrade.umd.js',
// other libraries
'rxjs': 'npm:rxjs',
'angular-in-memory-web-api': 'npm:angular-in-memory-web-api',
},
// packages tells the System loader how to load when no filename and/or no extension
packages: {
app: {
main: './main.js',
defaultExtension: 'js'
},
rxjs: {
defaultExtension: 'js'
},
'angular-in-memory-web-api': {
main: './index.js',
defaultExtension: 'js'
}
}
});
})(this);
将 defaultExtension: 'js'
添加到您的配置主要部分。您的配置不理解没有任何扩展名的文件的默认扩展名。
新配置如下所示
(function (global) {
System.config({
defaultExtension: 'js',
paths: {
// paths serve as alias
'npm:': 'node_modules/'
},
// map tells the System loader where to look for things
map: {