Я реализую директиву атрибута Angular 2, чтобы я мог добавить настраиваемое контекстное меню к элементу, подобному этому:
<p context-menu="myItems">Hello world</p>
Эта директива добавляет обработчик события мыши, чтобы щелкнуть правой кнопкой мыши, и идея состоит в том, чтобы затем построить контекстное меню, добавить его в DOM и затем уничтожить, когда пользователь закончит с ним.
У меня есть компонент, который реализует контекстное меню. Я хотел бы построить этот компонент, вызвать метод на нем, чтобы установить список элементов, а затем добавить его в DOM.
Похоже, я мог бы сделать это с помощью AppViewManager.createHostViewInContainer. Это подходящий способ сделать это? И если да, есть ли способ построить/получить ElementRef до document.body
, чтобы я мог показать createHostViewInContainer, чтобы построить там компонент? Очевидно, я не хочу, чтобы мое меню было обрезано внутри элемента, в которое я добавляю контекстное меню.