Angular2-Materials:导入MdSidenavModule会破坏应用程序吗?

时间:2016-08-27 07:14:07

标签: angular angular2-material

所以经过多次与版本的斗争,我有一个新的angular-cli启动应用程序,按照Angular2材料自述完成所有内容,得到按钮和卡片加载和编译,我的应用程序仍然正确加载。

然后我在我的组件中添加了一个导入MdSidenavModule,一切都很好。 在我的app.module文件的顶部,我然后调用MdSidenavModule的导入,并在@NgModule中我将MdSidenavModule添加到导入部分,就像我对按钮和卡片所做的那样。除非我这样做并保存,我的应用程序编译正确,但它永远不会离开“正在加载...”并进入我应该打印“应用程序工作!”的组件。就像默认的angular-cli app一样。

非常感谢任何帮助!

进入控制台的错误是

    zone.js:101 GET http://localhost:4200/vendor/@angular2-material/sidenav 404 (Not Found)scheduleTask @ zone.js:101ZoneDelegate.scheduleTask @ zone.js:336Zone.scheduleMacroTask @ zone.js:273(anonymous function) @ zone.js:122send @ VM1125:3fetchTextFromURL @ system.src.js:1154(anonymous function) @ system.src.js:1735ZoneAwarePromise @ zone.js:584(anonymous function) @ system.src.js:1734(anonymous function) @ system.src.js:2759(anonymous function) @ system.src.js:3333(anonymous function) @ system.src.js:3600(anonymous function) @ system.src.js:3985(anonymous function) @ system.src.js:4448(anonymous function) @ system.src.js:4700(anonymous function) @ system.src.js:406ZoneDelegate.invoke @ zone.js:323Zone.run @ zone.js:216(anonymous function) @ zone.js:571ZoneDelegate.invokeTask @ zone.js:356Zone.runTask @ zone.js:256drainMicroTaskQueue @ zone.js:474ZoneTask.invoke @ zone.js:426
zone.js:461 Unhandled Promise rejection: Error: XHR error (404 Not Found) loading http://localhost:4200/vendor/@angular2-material/sidenav
        at XMLHttpRequest.wrapFn [as _onreadystatechange] (http://localhost:4200/vendor/zone.js/dist/zone.js:769:30)
        at ZoneDelegate.invokeTask (http://localhost:4200/vendor/zone.js/dist/zone.js:356:38)
        at Zone.runTask (http://localhost:4200/vendor/zone.js/dist/zone.js:256:48)
        at XMLHttpRequest.ZoneTask.invoke (http://localhost:4200/vendor/zone.js/dist/zone.js:423:34)
    Error loading http://localhost:4200/vendor/@angular2-material/sidenav as "@angular2-material/sidenav" from http://localhost:4200/app/app.module.js ; Zone: <root> ; Task: Promise.then ; Value: Error: Error: XHR error (404 Not Found) loading http://localhost:4200/vendor/@angular2-material/sidenav(…)consoleError @ zone.js:461_loop_1 @ zone.js:490drainMicroTaskQueue @ zone.js:494ZoneTask.invoke @ zone.js:426
zone.js:463 Error: Uncaught (in promise): Error: Error: XHR error (404 Not Found) loading http://localhost:4200/vendor/@angular2-material/sidenav(…)

这是我的app.module.ts

import { NgModule }      from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { MdCardModule } from '@angular2-material/card';
import { MdButtonModule } from '@angular2-material/button';
import { MdSidenavModule } from '@angular2-material/sidenav';
import { AppComponent }  from './app.component';

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

我的app.component.ts

import { Component } from '@angular/core';
import { MdCardModule } from '@angular2-material/card';
import { MdButtonModule } from '@angular2-material/button';
import { MdSidenavModule } from '@angular2-material/sidenav';
@Component({
  moduleId: module.id,
  selector: 'app-root',
  templateUrl: 'app.component.html',
  styleUrls: ['app.component.css']
})
export class AppComponent {
  title = 'app works!';
}

我已经安装了双重检查并且安装了sidenav,但我也重新安装了它以确保安装。不确定我遗失了什么。

1 个答案:

答案 0 :(得分:0)

我很笨,我忘了把它添加到materialPkgs数组中来加载。