Сохраните поля, которые были изменены в списке, с угловой реактивной формой

Измените свой mouseClick(...) на:

int x, y;

public void mouseClicked(MouseEvent e) {
    x = e.getX();
    y = e.getY();

    repaint();
}

Переопределить paint(...):

@Override
public void paint(Graphics g) {
    drawCircle(x, y);
}
0
задан Luiz Ricardo Cardoso 18 January 2019 в 15:43
поделиться

2 ответа

Следующий метод вернет вам список значений, которые были изменены:

getDirtyValuesForForm(formName: any) {
        let dirtyValues = {};

        Object.keys(formName.controls)
            .forEach(key => {
                let currentControl = formName.controls[key];

                if (currentControl.dirty) {
                    if (currentControl.controls)
                        dirtyValues[key] = this.getDirtyValues(currentControl);
                    else
                        dirtyValues[key] = currentControl.value;
                }
            });

        return dirtyValues;
}

Вы можете проверить элементы управления для dirty-flag. Прочитайте форму здесь https://angular.io/api/forms/FormControl

0
ответ дан programoholic 18 January 2019 в 15:43
поделиться

Если вы сохраните исходное значение формы, вы можете сравнить, чтобы узнать, что изменилось.

Вы можете увидеть пример работы здесь .

0
ответ дан Thomaz Capra 18 January 2019 в 15:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: