平台:Ubuntu 14.0.1 NPM版本:4.6.1
我有一个Angular 2应用程序,我正在尝试使用Material Radio按钮。我使用以下命令安装了这些:
npm i @angular2-material/radio
我在Module中添加了以下代码:
import { Component } from '@angular/core';
import { FormControl, FormGroup, FormBuilder, Validators } from '@angular/forms';
import { Router } from '@angular/router';
import { MdRadioModule } from '@angular2-material/radio';
以下是.html文件的内容(中断):
<md-radio-group>
<md-radio-button value="1">Option 1</md-radio-button>
<md-radio-button value="2">Option 2</md-radio-button>
</md-radio-group>
当我运行应用程序时,我在浏览器的控制台&amp;中遇到以下错误我的申请在那里打破:
nhandled Promise rejection: Template parse errors:
'md-radio-group' is not a known element:
1. If 'md-radio-group' is an Angular component, then verify that it is part of this module.
2. If 'md-radio-group' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schemas' of this component to suppress this message. (" <md-radio-button value="2">Option 2</md-radio-button>
</md-radio-group>-->
[ERROR ->]<md-radio-group></md-radio-group>
<div class="page-card-separator"> </div>
"): AddProviderComponent@35:12 ; Zone: <root> ; Task: Promise.then ; Value: Error: Template parse errors:
'md-radio-group' is not a known element:
1. If 'md-radio-group' is an Angular component, then verify that it is part of this module.
2. If 'md-radio-group' is a Web Component then add "CUSTOM_ELEMENTS_SCHEMA" to the '@NgModule.schemas' of this component to suppress this message. (" <md-radio-button value="2">Option 2</md-radio-button>
</md-radio-group>-->
[ERROR ->]<md-radio-group></md-radio-group>
<div class="page-card-separator"> </div>
"): AddProviderComponent@35:12
at TemplateParser.parse (compiler.umd.js:8502)
at RuntimeCompiler._compileTemplate (compiler.umd.js:16882)
at eval (compiler.umd.js:16805)
at Set.forEach (<anonymous>)
at compile (compiler.umd.js:16805)
at ZoneDelegate.invoke (zone.js?1505985812318:192)
at Zone.run (zone.js?1505985812318:85)
at zone.js?1505985812318:451
at ZoneDelegate.invokeTask (zone.js?1505985812318:225)
at Zone.runTask (zone.js?1505985812318:125) Error: Template parse errors:
答案 0 :(得分:3)
请使用以下命令安装材料2:
package.json
中,更改/添加"@angular/material"
和"@angular/cdk"
版本"2.0.0-beta.10"
package.json
所在的文件夹。npm install
要导入MdRadioModule
,请使用以下命令:
import { MdRadioModule } from '@angular/material';
链接到working demo。
答案 1 :(得分:2)
首先安装@angular/material
和@angular/cdk
,然后将相关的程序包导入app.module.ts
文件中:
import { MatRadioModule } from '@angular/material';
答案 2 :(得分:0)
答案 3 :(得分:0)
我遇到了同样的问题。一旦在子级模块中导入MatRadioModule,它就可以工作。我有一个子级别的模块,名为wizard.module.ts。我导入MatRadioModule,然后还将其包含在Wizard.module.ts文件的NgModule的imports部分中。同样,一旦导入到子级模块,就可以根据需要在全局模块(app.module.ts)中注释导入部分。您无需从两个地方都导入。