169 похожих чатов

Привет всем, столкнулся с проблемкой, у меня есть группа компонентов,

которые реализуют smart table комопонент. Под smart table я подразумеваю компонент которвый выводит данные в табличном виде, умеет делать пагинацию, фильтрацию, сортировку. Так вот, есть корневая директива st-table которая рулит состоянием, и есть разные вспомоагтельные директивы которые ее юзают для управления состоянием и синхронизации своего ui с ним, к примеру st-filter и st-sort, иерархия примерно такая:

<div st-table>
<input st-filter='fieldName' />
<table>
<tr>
<td st-sort='fieldName'>
....

следовательно директивы st-filter и st-sort у себя в конструкторе делают просто constructor( @Host() private st: SmartTableDirective) и потом через этот инст подписываются и вызывают все что им нужно. И все это прекрасно работало ровно до того момента когда мне потребовалось утащить st-sort внутрь друго компонента, то есть директива теперь не может достучатся через @Host() до нужной родительской директивы, дословно прям так и говорит No provider for SmartTableDirective. Так вот ошибка меня на талкивает на мысль что я могу как то запровайдить инст на этот компонент внутри моего компонента, только вот не знаю как, и вообще возможно ли это? То есть ли способ прокинуть нужный комопонент глубже по дереву компонентов чтобы через @Host() декоратор можно было подцепить его?

2 ответов

13 просмотров

@Optional() в консрукторе

Еще можешь в 'st-table' провайдить сервис таблица по токену, а в остальных его инжектить. Соотвественно от @Host избавляемся и имеем нормальную иерархию без танцев с бубном

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Всем привет! Кто пользуется DevExpress, подскажите пожалуйста, реализован ли в TcxGrid в новых версиях поиск по датам как в Экселе (ну т.е. не просто список чекбоксов со значе...
A Z
4
Карта сайта