2017-08-21 163 views
1

我在使用angular-material2時遇到了一個問題,我試圖使用輸入。但是,沒有任何我嘗試過的工作。角材料2 md-輸入容器不能正常工作

我得到這個問題:

'MD-輸入容器' 不是一個已知的元素

Console issue

HTML:

<md-input-container> 
<input mdInput placeholder="Favorite food" value="Sushi"> 
</md-input-container> 

我將其導入我的component.ts,在我app.ts

import { MdInputModule } from '@angular/material'; 

,我宣佈它在我的@NgModule '進口' 在app.ts

我的材料的版本是@角/材料@ 2.0.0-beta.8

感謝您的幫助。

編輯:我發現我將它導入app.module.ts,它導入了另一個需要放置聲明的模塊。我的代碼有點混亂,我需要清除它。對不起,我的朋友。案件結案。

+0

您在哪個組件中使用'md-input-container'? – yurzui

+0

在哪裏聲明瞭這個組件? – yurzui

回答

0
import { MdInputModule } from '@angular/material'; 

而在imports: [ MdInputModule ]@NgModuleapp.ts

+2

-1。對不起downvote,但不應該使用'MaterialModule'。它自[** beta3 **](https://github.com/angular/material2/blob/master/CHANGELOG.md#200-beta3-cesium-cephalopod-2017-04-07)以來已被棄用,它可能會一旦[**此PR **](https://github.com/angular/material2/pull/6581)被合併,就會在下一個版本('beta9')中完全刪除。 – developer033

+0

'MaterialModule'已被棄用,因爲Beta 3 ... – developer033

+0

@ developer003,是的,我意識到這一點,我應該早些指定'MdInputModule' – Faisal

-1

進口原料模塊添加MdInputModule到您的應用程序訪問材料的核心指令

​​
+0

與我的回答有什麼不同? – Faisal

+2

不要這樣做。它已被棄用,它很快就會被移除。 – developer033

+0

至於費薩爾的回答,不要這樣做。這個模塊已被棄用,並且有2個月的使用警告。 – Mozgor

1

你應該把MdInputModule在app.module進口.TS。 而且您還應該導入您使用的Material元素的每個單獨模塊

+0

'@ angular/material''的import {MdInputModule}位於我的** user-form.component.ts **中,我使用** user-form.component.html **中的HTML。然後,它也在** app.module.ts **和MdInputModule中聲明爲@NgModule的_import_,就像我爲之前需要的每個模塊所做的那樣。 –

0

通過僅導入所用組件的模塊,您所做的方式是正確的。如果僅使用一個或兩個組件,整個導入整個MaterialModule是過度的。 你需要確保這是什麼(從Getting Started guide, step 3):

無論接近你使用時,一定要導入角材料后角的BrowserModule 模塊,作爲進口秩序事項 NgModules。

+0

除了「過度殺傷」之外,整個'MaterialModule'即將消失。導入你需要的模塊,就是這樣。 – Mozgor