Angular 4 - при нажатии кнопки требуется добавить текстовую область для динамического просмотра при каждом нажатии кнопки

На самом деле я хочу создать одно текстовое поле при нажатии кнопки над видом. У меня нет особого представления об угловом 4. Требование состоит в том, что при каждом нажатии кнопки я хочу создать текстовое поле поверх представления. Должно быть несколько текстовых полей с перекрестными кнопками, поэтому я могу удалить текстовое поле, если не хочу.

К сожалению, я еще не пробовал код и не нашел решения для его реализации. Но это мое требование создать в angular 4. Любая помощь будет заметна.


person Flutterian    schedule 26.07.2018    source источник


Ответы (1)


Приведенный ниже код будет соответствовать вашим требованиям по созданию текстовой области при нажатии кнопки, а также удалению определенной текстовой области.

<div style="padding-top: 200px">
<button (click)="addTextarea()">Add Textarea</button>
<form>
    <div *ngFor="let textarea of textAreasList; let textarea_index= index">
        <textarea name="{{textarea}}"></textarea>
        <button (click)="removeTextArea(textarea_index)">Remove</button>
    </div>
</form>

place the above code in .html file.

import { Component } from '@angular/core';

@Component({
    selector: 'home',
    templateUrl: 'home.component.html',
    styleUrls: ['home.component.css']
})
export class HomeComponent {

    textAreasList:any = [];

    addTextarea(){        
        this.textAreasList.push('text_area'+ (this.textAreasList.length + 1));
    }


    removeTextArea(index){
        this.textAreasList.splice(index, 1);
    }

}

поместите приведенный выше код в файл .ts. Дайте мне знать, если у вас возникнут другие трудности.

person Umang Patel    schedule 26.07.2018
comment
Еще один вопрос, как я могу сделать его перетаскиваемым? - person Flutterian; 26.07.2018
comment
Не могли бы вы немного прояснить, что вы хотите сделать? Вы хотите иметь возможность перетаскивать текстовое поле в другое место на странице? - person Umang Patel; 26.07.2018
comment
Да, верно. Я хочу перетащить текстовое поле в любое место на экране - person Flutterian; 26.07.2018
comment
Для этой функциональности вы можете использовать сторонние пакеты. Пожалуйста, создайте отдельный вопрос для получения дополнительной помощи о перетаскивании. - person Umang Patel; 26.07.2018
comment
@UmangPatel Если я хочу отобразить текстовую область перед добавлением ее с помощью кнопки «Добавить», как я могу это сделать? - person Samasha; 05.09.2019