任务是当用户使用AngularJs单击按钮时在页面上添加输入字段。
脚步:
- 操作所需的组件已创建(add-inputComponent) 。
- 在该组件中,编写了html文件(add-input.component.html)所需的html。
- 在该HTML中,输入字段的主div在那里,并创建了按钮。
- ADD按钮上有一个(单击)事件,该事件重定向在add-input.component.ts中正在工作的用户定义的函数上。
- 在用户定义的函数,每次用户单击按钮时都会使用createElement()方法创建一个划分,并且使用innerHTML()属性创建输入字段。
- 然后,通过appendChild()方法将创建的元素div追加到add-input.component.html的主div中。
下面是上述步骤的实现:
app.module.ts
// Necessary imports of component is done
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { AddInputComponent } from './add-input/add-input.component';
@NgModule({
declarations: [
AppComponent,
AddInputComponent
],
imports: [
BrowserModule,
AppRoutingModule,
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
add-input.component.html
CLICK ON BUTTON TO ADD NEW FIELD
add-input.component.ts
// The class function add() is made that contains
// the necessary code for the action
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-add-input',
templateUrl: './add-input.component.html',
styleUrls: ['./add-input.component.css']
})
export class AddInputComponent implements OnInit {
constructor() { }
ngOnInit(): void {
}
add(){
let row = document.createElement('div');
row.className = 'row';
row.innerHTML = `
`;
document.querySelector('.showInputField').appendChild(row);
}
}
输出:
- 单击按钮之前:
- 单击按钮后: