Мы используем ngx-contextmenu для нашего проекта, где у нас есть 2 макета.
- Представление списка - для этого мы используем библиотеку ag-grid
- Оправданный вид (Макет фотографии)
Мы создали другой компонент в виде custom-context-menu и хотели повторно использовать его через селектор. Я упомянул эту проблему для этого сценария, однако в нашем случае мы сталкиваемся с множеством проблем.
Код: использование ниже в custom-context-menu.compoennts. html
<customcontextmenu >
<ng-template contextMenuItem let-item (execute)="onClickItem($event)">Apple</ng-template>
<ng-template contextMenuItem let-item divider="true"></ng-template>
<ng-template contextMenuItem> let-itemPear</ng-template>
</customcontextmenu>
код в custom-context-menu.components.ts
@Component({
encapsulation: ViewEncapsulation.None,
selector: 'customcontextmenu',
styles: [`
.cdk-overlay-container {
position: fixed;
z-index: 1000;
pointer-events: none;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.ngx-contextmenu.cdk-overlay-pane {
position: absolute;
pointer-events: auto;
box-sizing: border-box;
}
`],
template: ` `,
providers: [ExtendableContextMenuComponent]
})
export class ExtendableContextMenuComponent extends ContextMenuComponent {
}
@Directive({
selector: 'customcontextmenu',
})
export class CustomContextMenuComponent implements OnInit {
public basicMenu: ContextMenuComponent;
constructor( public contextMenu: ExtendableContextMenuComponent,public globalService:GlobalService,public addtoSelectedFile:AddToSelectedFolderComponent,public shareService:ShareService, private contextMenuService: ContextMenuService) {
}
ngOnInit() {
}
onContextMenu($event: MouseEvent, item: any): void {
this.contextMenuService.show.next({
contextMenu: this.contextMenu,
event: $event,
item: item
});
}
}
Как мы можем сделать вызов при щелчке элемента представления списка (ag-grid)?
Пожалуйста, помогите с этой проблемой.