我如何添加一个从有角材料形式中获取价值的物品?

时间:2019-05-10 08:40:19

标签: angular angular-material angular-cli

我有一个动态导航栏,该导航栏将其项保留在一个数组中。我可以在上面添加项目,但只是静态的。我想添加从表单输入区域获取价值的项目。

这是我的.ts文件

export class NavbarComponent implements OnInit {

MenuItem: MenuItemModels[] = [
{ name : "Home" , link : "#" },
{ name : "About" , link : "#" },
{ name : "School" , link : "#" },
{ name : "Staff" , link : "#" },
{ name : "Contact" , link : "#" }

];
addItem(){

let customObj = new MenuItemModels();
customObj.name = "something";
customObj.link = "#"; 
this.MenuItem.push(customObj);

}

这是我的模特

export class MenuItemModels {

name: any; 
link: any;

}

这是我的表单组件,它是我要从此表单输入中评估并添加到我的MenuItemList上的另一个组件

<div class="example-container">
<mat-form-field>
<input matInput placeholder="Input">
</mat-form-field>

<mat-form-field>
<textarea matInput placeholder="Textarea"></textarea>
</mat-form-field>

<mat-form-field>
<mat-select placeholder="Select">
  <mat-option value="option">Option</mat-option>
</mat-select>
</mat-form-field>
</div>

1 个答案:

答案 0 :(得分:0)

如果要在其他组件中使用该列表,则可以使用放置在服务中的 Subject ,并在输入(ngModelChange)=someMethod($event)上执行customSubject.next(inputValue) 然后您将在所需的任何地方阅读该主题