ngx-slick-carousel无限轮播模式下Material Icon的SVG内容消失问题求助
ngx-slick-carousel无限轮播模式下Material Icon的SVG内容消失问题求助
我最近在用ngx-slick-carousel做一个轮播组件,每个轮播幻灯片里都放了Material卡片,卡片内部还嵌套了Material图标。
当轮播设置为非无限循环模式时,所有功能都正常。可一旦开启无限循环模式,就出问题了:当我滑到最后一张幻灯片后继续向右滑动,卡片里的图标就消失了。我检查DOM结构发现<mat-icon>标签还在,但它里面的SVG内容直接没了。不过要是继续滚动,等回到第一张幻灯片的时候,图标又会重新显示出来,之后再滑到末尾又会重复这个消失的循环。
有没有大佬能给我一些解决这个问题的思路或者建议呀?
PS:我还发现一个规律,这个问题只在我通过外部资源URL注册SVG图标时才会出现,代码是这样的:
this.iconRegistry.addSvgIcon('star', this.domSanitizer.bypassSecurityTrustResourceUrl('/assets/icons/star.svg'));
如果我用直接传入SVG文本的方式注册图标,就不会出现图标消失的情况,代码示例如下:
this.iconRegistry.addSvgIconLiteral('thumbs-up', this.domSanitizer.bypassSecurityTrustHtml(THUMBUP_ICON));
备注:内容来源于stack exchange,提问作者Martin
相关产品推荐
相关产品推荐

