Как сбросить форму после отправки с использованием контроллера в качестве синтаксиса

#javascript #asp.net #angularjs #typescript

#javascript #asp.net #angularjs #typescript

Вопрос:

После добавления объекта через форму я хотел бы сбросить форму, чтобы пользователь мог добавить другую. Я пробовал $setPristine(), но не могу разобраться в синтаксисе. На данный момент я только что вернул путь к местоположению на ту же страницу, но это, конечно, ничего не сбрасывает. Также интересно, является ли $setPristine правильным способом. Вот моя функция сохранения.

     export class AddCarController {
    public newCar;
    public save() {
        this.carService.save(this.newCar).then(() => { this.$location.path('/addCarPage') });
    }
    constructor(
        private carService: MyApp.Services.CarService,
        private $location: angular.ILocationService
    ) { }

}
 

Комментарии:

1. Если вы создали javascript в контроллере, вы можете просто установить объект как — $scope.car = {} Это приведет к сбросу модели в пользовательском интерфейсе.

2. Спасибо! К сожалению, я не знаю, как использовать синтаксис $scope .

3. Вы создали какой-либо объект javascript? Если да, то просто сбросьте его как: $scope.newCar = {};

4. Спасибо! Я в правильном направлении. Мне нужно было сбросить его как: this.newCar = {};

5. Не могли бы вы поддержать мой ответ, поскольку это сработало для вас?

Ответ №1:

В angular вы можете создавать модель только в html, а также в контроллере или в обоих местах

Если вы создали модель в html

 $scope.newCar = {} //this will empty whole ui model object
 

Если вы создали модель в контроллере JavaScript

 $scope.newCar = new carModel() //this will create new car object with default values , if you have model in controller
 

Перемещаться вперед и назад — не рекомендуется