我对 Angular 2 还很陌生,我正在尝试完全了解如何使用外部库,特别是 Bootstrap 模式。
按照https://www.npmjs.com/package/ng2-bootstrap-modal的说明,我运行了以下命令:
npm install ng2-bootstrap-modal
在我的 index.html 中,我已验证我具有以下内容:
<!--Bootstrap CSS-->
<link rel="stylesheet" href="Content/bootstrap.min.css">
该模块在 app.module.ts 中导入:
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { Router } from '@angular/router';
// Custom Components
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { NavbarComponent } from './navbar/index';
import { ProjectComponent, ProjectService } from './project/index';
import { AccomplishmentComponent, AccomplishmentService } from './accomplishment/index';
import { OptionService } from './option/index';
import { HomeComponent } from './home/index';
import { LoadingComponent } from './loading/index';
import { ProjectPipe } from './project/project.pipe';
import { BootstrapModalModule } from 'ng2-bootstrap-modal';
@NgModule({
imports: [ BrowserModule, FormsModule, HttpModule, AppRoutingModule, BootstrapModalModule ],
declarations: [ AppComponent, ProjectComponent, NavbarComponent, HomeComponent, AccomplishmentComponent, LoadingComponent, ProjectPipe ],
providers: [ ProjectService, OptionService, AccomplishmentService ],
bootstrap: [ AppComponent ]
})
export class AppModule {
// Diagnostic only: inspect router configuration
constructor(router: Router) {
console.log('Routes: ', JSON.stringify(router.config, undefined, 2));
}
}
为什么我得到以下信息?
GET http://localhost:3000/ng2-bootstrap-modal 404 (Not Found)
在我的 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',
// other libraries
'rxjs': 'npm:rxjs',
'angular-in-memory-web-api': 'npm:angular-in-memory-web-api/bundles/in-memory-web-api.umd.js'
},
// 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'
}
}
});
// Load "./app/main.ts" (gets full path from package configuration above).
// --
// NOTE: We are attaching the resultant promise to the global scope so that other
// scripts may listen for the successful loading of the application.
this.bootstrapping = System
.import("app")
.then(
function handleResolve() {
console.info("System.js successfully bootstrapped app.");
},
function handleReject(error) {
console.warn("System.js could not bootstrap the app.");
console.error(error);
return (Promise.reject(error));
}
);
})(this);
非常感谢所有的帮助!