我開始使用Angular 2/Material Design項目,並在嘗試使用<md-tab-group>
組件時遇到問題。我見過的一般結構的例子如下所示:使用材質<md-tab-group>內的Angular 2組件
<md-tab-group>
<md-tab label="Gallery">
//gallery content here
</md-tab>
<md-tab label="Settings">
//setting content here
</md-tab>
</md-tab-group>
不過,我想模塊化每個選項卡的功能和它的內容到單獨的角2層的組件是這樣的:
應用。 component.html
<md-tab-group>
<app-gallery></app-gallery>
<app-settings></app-settings>
</md-tab-group>
我現在共有結構遵循基本角2成分約定,例如:
gallery.component.ts
import { Component, OnInit } from '@angular/core';
import {Http} from '@angular/http';
@Component({
selector: 'app-gallery',
templateUrl: './gallery.component.html',
styleUrls: ['./gallery.component.css']
})
export class GalleryComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}
我然後使用<md-tab>
元素每個組件的模板中,像這樣。
<md-tab label="gallery">
<p>Gallery here...</p>
</md-tab>
最後,我確定一切都已導入並正確聲明。
app.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { MaterialModule } from '@angular/material';
import { AppComponent } from './core/app.component';
import 'hammerjs';
import { GalleryComponent } from './gallery/gallery.component';
@NgModule({
declarations: [
AppComponent,
GalleryComponent
],
imports: [
BrowserModule,
FormsModule,
HttpModule,
MaterialModule.forRoot()
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
這可能嗎?目前我懷疑可能無法從<md-tab-group>
中提取<md-tab>
元素。對我來說,將所有選項卡及其內容包含在一個單獨的html文件中似乎很麻煩,更不用說擊敗組件的目的了。如果有可能,我會很感激任何關於如何正確設置它的指導。提前致謝!
你會得到什麼樣的錯誤?另外我不能在'app.component.html'中看到爲'app-settings'定義的選擇器。 –
我剛剛使用了一個組件,''作爲示例和簡潔。 ''存在並且構造完全相同。對困惑感到抱歉。 –
mikeym