使用Angular2应用程序的引导程序的问题

时间:2017-07-26 14:18:02

标签: javascript css twitter-bootstrap angular

我正在使用Angular2创建一个动态网站,我在为它添加bootstrap时遇到了严重的麻烦。

我的index.html文件如下所示:

<!DOCTYPE html>
<html>

<head>
    <script>
        document.write('<base href="' + document.location + '"      />');
    </script>
    <title>Angular.io QuickStart</title>
    <base href="/">
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <base href="/">
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="styles.css">

    <!-- Polyfill(s) for older browsers -->
    <script src="node_modules/core-js/client/shim.min.js"></script>
    <script src="node_modules/zone.js/dist/zone.js"></script>
    <script src="node_modules/systemjs/dist/system.src.js"></script>
    <script src="systemjs.config.js"></script>
    <script>
        System.import('app/main.js').catch(function(err) {
            console.error(err);
        });
    </script>
</head>

<body>
    <my-app>Loading App</my-app>
</body>

</html>

然后我尝试在app.module.ts文件中导入它,如下所示:

import { NgModule } from 'angular2/core';
import { BrowserModule } from '@angular2/platform-browser';
import { Alert } from 'ng2-bootstrap/ng2-bootstrap';

import { AppComponent }  from './app.component';

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

特别是这些行给出了&#34;模块无法找到&#34;错误:

import { NgModule } from 'angular2/core';
import { BrowserModule } from '@angular2/platform-browser';
import { Alert } from 'ng2-bootstrap/ng2-bootstrap';

我正在运行从nuGet包管理器安装的Angular2 + ASP.net模板。我还从软件包管理器控制台安装了ng2-bootstrap和ng-bootstrap的版本。我还更新了我的node.js包和我的角度文件。

我是整个Angular的新手,我只想设置我的基础,以便开始玩这些功能。

所以我当前的解决方案有什么问题,我该怎么做才能解决它?是否有更容易/更好的方法将引导程序绑定到我的Angular2应用程序?

2 个答案:

答案 0 :(得分:0)

如果在index.html中包含bootstrap,则无需导入。如果使用npm install安装bootstrap,则只需导入。

答案 1 :(得分:0)

ng2-bootstrap和ng-bootstrap与Bootstrap本身无关。如果您正在使用CDN,那么您可以使用引导示例中显示的类名,无需在app.module.ts中导入任何内容

这是一个很小的example如何在Angular项目中使用Bootstrap(通过CDN)。

<div class="md-form input-group input-group-lg">
      <span class="input-group-addon" id="basic-addon1">http://</span>

      <input type="text" class="form-control" placeholder="Type Domain Name" 
      aria-describedby="basic-addon1"
      [mdAutocomplete]="auto" [formControl]="stateCtrl">

      <span class = "input-group-btn">
        <button class="btn btn-primary" >Calculate</button>
      </span>
</div>