Я бы хотел улучшить наше приложение с помощью вышеупомянутого JSON-редактора , однако, похоже, что существуют слои материала и стиля начальной загрузки, которые имеют прецедент над стилем угловых компонентов, что приводит к непригодности интерфейса.Моя цель - заставить применить стандартные стили.
Я пробовал следующее:
style.css:
- добавление '@import "~ jsoneditor / dist / jsoneditor.min.css";'
- добавление '@import url ("~ jsoneditor / dist / jsoneditor.min.css";)'
- вставка таблицы стилей и связанных активов
component-parent.scss:
- с добавлением @import ~jsoneditor / dist / jsoneditor.min.css "; '
- добавление' @import url (" ~ jsoneditor / dist / jsoneditor.min.css ";) '
- , встраивающее таблица стилей и связанные с ней активы
Я также настроил демонстрационный проект, в котором пользовательский интерфейс правильно отображает, и сравнил его стилизацию с тем же компонентом в моем приложении и подтвердилОтсутствие стиля является основной причиной проблемы.Ниже приведены изображения пользовательского интерфейса и код ошибки css:
Пользовательский интерфейс без стиля CSS без стиля
Шаги, чтобы получить рабочий пример анг-jsoneditor на вашем локальном хосте:
- git clone https://github.com/mariohmol/ang-jsoneditor.git
- npm run start
- перейти к "http://localhost:4200"
Откройте ваши devtools, выделите компонент редактора json и увидите на панели стилей стили jsonedior, такие как:
div.jsoneditor-menu>button.jsoneditor-expand-all {
background-position: 0 -120
}
Я ожидал, что если я локально применил стиль в parent-component.scss, что это будет применено. Из-за многомодульной природы проекта есть четкая вероятность того, что все шаги, выполненные ранее, были выполнены частично по ошибке из-за неизвестных соглашений. С учетом сказанного, если бы это было так, яожидал бы, по крайней мере, увидеть стили цвета, когда таблица стилей была добавлена в parent-componentenet.scss. По этой причине я считаю, что именно мое незнание прецедентных проблем css вызывает эту проблему.
** Обновление **
Итак, я прочитал эту ссылку о переопределении стиля дочернего углового компонента , который помог мне понять, что дочерние компоненты полностью инкапсулированы по умолчанию, поэтому мои локальные изменения в родительском компонентеКомпонент не повлияет на ребенка без использования стиля пирсинга или ng-deep.Это указывает на то, что существует проблема с модулем или как регистрируются активы модуля ang-json-editor.Я провел тестирование с использованием ng-deep, и это произвело эффект изменения компонента, но мне пришлось бы обновить всю таблицу стилей линии 2000, чтобы это не было приемлемым решением.