Границы ввода Mdbootstrap V5 не отображаются при использовании на страницах AngularJS (кроме макета)

#javascript #angularjs #asp.net-mvc #mdbootstrap

#javascript #angularjs #asp.net-mvc #mdbootstrap

Вопрос:

Я пытаюсь переделать некоторые формы в приложении AngularJS, используя mdbootstrap версии 5. Я столкнулся с проблемой ввода. Входные данные, находящиеся внутри страниц панели мониторинга (приложение является панелью мониторинга), не получают границ, в то время как входные данные, находящиеся на главной странице или макете, имеют. Я добавил mdb.js файл в свой макет, и он работает нормально. Я предполагаю, что прослушиватели событий регистрируются до отображения элементов, поэтому, если это правильно, мне интересно, есть ли способ перерегистрировать прослушиватели событий или как-то пересчитать стили после отображения входных элементов. вот как загружаются мои входные данные

Ответ №1:

Согласно тому, что вы описали, я нашел это в собственных документах mdbootstrap:

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

 document.querySelectorAll('.form-outline').forEach((formOutline) => {
  new mdb.Input(formOutline).init();
});

 

источник: https://mdbootstrap.com/docs/standard/forms/input-fields /

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

1. У меня похожие проблемы, я попробовал приведенный выше код js, он работает, но только при перезагрузке страницы. Если я, например, перехожу с одного маршрута на другой / регистрируюсь для входа в систему, граница исчезает, тогда мне приходится перезагружать страницу, чтобы получить ее. Это нормальное поведение?