Регистрация mat-icon в общем угловом модуле и использование его в хост-приложении - PullRequest
0 голосов
/ 29 января 2019

У меня есть общий модуль-

@NgModule({
  imports: [
    CommonModule,
  ],
  exports: [
    ThreeDotsIconComponent,
    HighlightDirective
  ],
  declarations: [
    HighlightDirective,
    ThreeDotsIconComponent
  ],
  entryComponents: [
  ],
  providers: []
})
export class SharedLayoutModule {}

Компонент ThreeDotsIconComponent - это простой компонент, содержащий код для компонента значка материала 2.

import {Component} from '@angular/core';
import {DomSanitizer} from '@angular/platform-browser';
import {MatIconRegistry} from '@angular/material';

/**
 * @title SVG icons
 */
@Component({
  selector: 'icon-svg-example',
  templateUrl: 'icon-svg-example.html',
  styleUrls: ['icon-svg-example.css'],
})
export class IconSvgExample {
  constructor(iconRegistry: MatIconRegistry, sanitizer: DomSanitizer) {
    iconRegistry.addSvgIcon(
        'thumbs-up',
        sanitizer.bypassSecurityTrustResourceUrl('assets/img/examples/thumbup-icon.svg'));
  }
}

Я хочу использоватьthumbs-up имя значка во всех хост-проектах (во всех проектах, где используется общий модуль).Я хочу сделать это, не используя его селектор html, как-

<icon-svg-example></icon-svg-example>

в хост-проекте.Я не уверен, как это сделать.перепробовал много способов но не нашел точного решения.Я буду использовать это как -

<mat-icon svgIcon="thumbs-up"></mat-icon>

Я не хочу регистрировать иконки в хост-проекте.Пожалуйста, помогите!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...