3

按照 ng-bootstrap 官方网站上的文档,我一直在尝试在我的 Angular 2 项目中使用 ng-bootstrap。

我所做的如下:

  1. npm install bootstrap@4.0.0-alpha.4
  2. 导航到根 /bootstrap 目录并运行npm install以安装 package.json 中列出的本地依赖项。
  3. 再次导航到根项目并运行npm install --save @ng-bootstrap/ng-bootstrap

之后,我在模块中导入如下:

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { routing } from './app.routing';

import {NgbModule} from '@ng-bootstrap/ng-bootstrap';


import { AppComponent } from './app.component';
import { PageModule } from "./page/page.module";

@NgModule({
    declarations: [
        AppComponent,
    ],
    imports: [
        BrowserModule,
        FormsModule,
        HttpModule,
        NgbModule,
        PageModule,
        routing
    ],
    providers: [],
    bootstrap: [AppComponent]
})
export class AppModule {
}

但是,我仍然无法在我的项目中使用引导样式,例如 pull-left。

有关信息,我将 angular-cli v1.0.0-beta.15 与 webpack 一起使用。

我该如何解决这个问题?

4

2 回答 2

4

在装饰器的导入中,您需要像这样调用 ngBootstrap

NgbModule.forRoot()

示例 AppModule

import { BrowserModule } from '@angular/platform-browser';
import { NgbModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { RouterModule, Routes } from '@angular/router';
import { AppComponent } from './app.component';
import { routes } from './app.routes';

// Add This
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';

@NgModule({
  declarations: [
 AppComponent,
],
imports: [
  BrowserModule,
  FormsModule,
  HttpModule,
  RouterModule.forRoot(routes), 
  // Add This
  NgbModule.forRoot()
],
  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }
于 2017-01-24T23:49:29.563 回答
4

我已经想通了。它实际上在 angular-cli github 页面中也有说明,在Global Libray Installation部分中,如下所示:

一些 javascript 库需要添加到全局范围,并像在脚本标记中一样加载。我们可以使用 的apps[0].scriptsapps[0].styles属性来做到这一点angular-cli.json

例如,要使用Boostrap 4,您需要执行以下操作:

首先从以下位置安装 Bootstrap npm

$ npm install bootstrap@next

然后将所需的脚本文件添加到apps[0].scripts.

"scripts": [
  "../node_modules/jquery/dist/jquery.js",
  "../node_modules/tether/dist/js/tether.js",
  "../node_modules/bootstrap/dist/js/bootstrap.js"
],

最后将 Bootstrap CSS 添加到apps[0].styles数组中:

"styles": [
  "styles.css",
  "../node_modules/bootstrap/dist/css/bootstrap.css"
],

如果您正在运行它,请重新启动ng serve,Bootstrap 4 应该可以在您的应用程序上运行。

于 2016-09-25T11:32:35.687 回答