Как исправлен метод POST с угловым 5

Я разрабатываю приложение для портала, но когда создаю новую роль, роль создается, но проблема в том, что добавленный элемент не отображается, он должен обновить браузер, чтобы отобразить этот новый элемент !!!, что мне делать, чтобы отобразить добавленный элемент непосредственно в моей таблице, и как разработать другой методы (поставить и удалить) и поблагодарить (я разрабатываю это приложение с angular 5) thid мой код .html:

<form #personForm = "ngForm" (ngSubmit) = "onSubmit(personForm.value)">
  <input name = "RoleName" [(ngModel)] = "RoleName">  
  <button type = "submit">Save</button>
</form>

и это мой код .ts:

export interface Role {
  RoleName: string;
}

@Component({
  selector: 'app-role',
  templateUrl: './role.component.html',
  styleUrls: ['./role.component.css']
})
export class RoleComponent implements OnInit, AfterViewInit {
  private roles: any;
  constructor(private _roleService: RoleService, private http: HttpClient) { }

  onSubmit(role: Role) {
    return this.http.post('http://172.16.47.34:8282/MonProject.webservices/api/Roles', role).subscribe(status => console.info(JSON.stringify(status)));
  }

  async ngOnInit() {
    this.roles = await this._roleService.getRoles();
  }
  ngAfterViewInit(): void {
    $('#example-table').DataTable({
      pageLength: 10,
    });
  }
}

Вы можете обновить конкретный компонент после получения данных.

Shubh 27.09.2018 11:40

@JaiDixit, спасибо за ваш ответ, но я хочу, чтобы элемент отображался без обновления, надеюсь, вы понимаете мою идею, потому что я новичок в английском

adem 27.09.2018 11:44

Обновление компонентов - это не то же самое, что обновление страницы. -Этот пост может быть полезным-stackoverflow.com/a/47814052/7849549

Shubh 27.09.2018 11:46

@JaiDixit, я имею в виду, что хочу обновить только таблицу без обновления всей страницы

adem 27.09.2018 12:06
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
1
4
58
1

Ответы 1

Если ваша публикация прошла успешно, обновите таблицу данных, добавив только что добавленную роль.

Вы можете добиться этого, добавив эту логику в функцию подписки.

Помещение и удаление должны следовать той же концепции. Если ответ показывает, что запрос был успешно обработан, то (в подписке) вы можете изменить свою таблицу данных.

Я заметил две вещи:

  1. Старайтесь избегать использования jQuery с Angular. Эти двое не самые лучшие вместе. Вы можете получить ссылку на таблицу данных с помощью ViewShild..

  2. Использование async / await с ngOnInit - плохая практика.

привет @ Balázs Takács, спасибо за ваш ответ, у меня есть вопрос, как я использую метод, вставлять и удалять, такой же принцип публикации метода?

adem 27.09.2018 12:04

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

Balázs Takács 27.09.2018 12:52

Другие вопросы по теме