Ошибка типа Angular: невозможно прочитать свойство 'icon' из неопределенного

0

как обрабатывать пустой вход на угловом?

Я хочу проверять на задней части не на передней панели. Но когда я отправлю его, верните мне ошибку, если я дам ей пустое значение на значке ввода

 TypeError: Cannot read property 'icon' of undefined

Вот моя форма:

 <div class="form-group">
                    <div class="form-material form-material-danger">
                        <input class="form-control" type="text" id="name" ng-model="menu.name" placeholder="Menu Name.." empty-to-null>
                        <label for="name">Name</label>
                    </div>
                </div>
                <div class="form-group">
                    <div class="form-material form-material-danger">
                        <input class="form-control" type="text" id="icon" ng-model="menu.icon" placeholder="Menu Icon.." >
                        <label for="icon">Icon</label>
                    </div>
                </div>

Вот мой код:

 var data = {
            icon: $scope.menu.icon,
            name: $scope.menu.name
        };

        AdminMenu.save(data, function (response) {
            console.log(response);
            $scope.menu = null;
            ResultService(response);
            $scope.dtInstance.reloadData();
        }, function (response) {
            ResultService(response.data);
        })
            .$promise.finally(function () {
                $scope.button_text = "Store";
                $scope.loading = false;
            });
  • 0
    Этот пример не завершен . где создается объект menu и где используется объект data ?
  • 0
    Здравствуй. Сфера меню из вида. Я просто беру это из модели нг. объект данных является полученным от ввода в переднем конце. @Claies
Показать ещё 1 комментарий
Теги:

1 ответ

1
Лучший ответ
$scope.menu = null

Когда вы устанавливаете menu на нуль, угловые больше не могут найти menu.icon. Вы должны сделать $scope.menu = {} если вы хотите "перезагрузить" его.

И, конечно же, не забудьте инициализировать $scope.menu перед его использованием.

  • 0
    Я не хочу сбрасывать это. Я просто хочу, если я нажму "отправить", он отправит в бэкэнд и вернет ошибку из бэкэнда. Прямо сейчас, если я отправлю, он вернет мне неопределенный
  • 0
    Так в чем же цель $scope.menu = null ?
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню