使用angular2加载ngs-boostrap时出错

时间:2016-09-30 20:02:40

标签: angular ng2-bootstrap

我正在尝试使用ng2-boostrap的下拉组件创建一个菜单。 访问索引时出现此错误:

无法加载资源:服务器响应状态为404(未找到)

到目前为止的步骤:

1)npm install ng2-bootstrap --save。文件夹ng2-bootstrap是在node_modules

下创建的

2)在app.module.ts上我单独尝试了Ng2BootstrapModule和DropdownModule

import { Ng2BootstrapModule } from 'ng2-bootstrap/ng2-bootstrap';
import { DropdownModule } from 'ng2-bootstrap/components/dropdown';

 @NgModule({
 imports: [ BrowserModule, Ng2BootstrapModule or DropdownModule ]....

3)在我的模板html

 <div class="dropdown" dropdown>
    <button class="btn btn-primary" dropdown-open>My Heroes</button>
        <ul class="dropdownMenu">
        <li><a href="#">Badman</a></li>
        <li><a href="#">Sadman</a></li>
        <li><a href="#">Lieman</a></li>
        </ul>
</div> 

我在https://valor-software.com/ng2-bootstrap/#/dropdowns上尝试了演示,但结果是一样的。

4)依赖项中的package.json有时刻和ng2-boostrap

"moment": "^2.15.1",
"ng2-bootstrap": "^1.1.5",

也许错误可能在ng2-boostrap的路径上, 已经尝试使用标签

<script src="node_modules/ng2-bootstrap/bundles/ng2-bootstrap.min.js"></script>

错误消失了,但下拉列表的样式仍然无法加载。浏览器单独呈现按钮和列表。在演示和快速启动时,标签没有被提及,所以我想它无论如何都是错误的。

1 个答案:

答案 0 :(得分:0)

有以下步骤:

1)安装ng2-bootstrapmoment包:

npm install ng2-bootstrap moment --save

2)配置systemjs.config.js

map: {
  ...
  'ng2-bootstrap': 'npm:ng2-bootstrap',
  'moment': 'npm:moment/moment.js'
},
packages: {
  ...
  'ng2-bootstrap': {
    defaultExtension: 'js'
  }
}

3)将DropdownModule导入您的模块:

import { DropdownModule } from 'ng2-bootstrap/ng2-bootstrap';

@NgModule({
  imports:      [ BrowserModule, DropdownModule ],
  declarations: [ AppComponent ],
  bootstrap:    [ AppComponent ]
})
export class AppModule { }

您也可以使用Ng2BootstrapModule代替

4)将bootstrap css链接添加到index.html

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">

5)在模板html中使用它(如仔细检查):

<div class="dropdown" dropdown>
  <button class="btn btn-primary" dropdownToggle>My Heroes</button>
  <ul class="dropdown-menu">
    <li><a href="#">Badman</a></li>
    <li><a href="#">Sadman</a></li>
    <li><a href="#">Lieman</a></li>
  </ul>
</div> 

您可以在 the Plunker

上看到已完成的示例