angular-google-maps - Angular 谷歌地图——折线适用于 Stackblitz,但不适用于本地
问题描述
我需要在一个div
标签内包装一个标签,agm-polyline
这样它就可以在同一个标签上同时容纳一个ngFor
和ngIf
指令agm-polyline-point
。例子:
<agm-polyline [strokeColor]="'blue'">
<div *ngFor="let waypoint of waypoints">
<agm-polyline-point *ngIf="boolean" [latitude]="waypoint.lat" [longitude]="waypoint.lng"></agm-polyline-point>
</div>
</agm-polyline>
从 localhost:4200 在我的计算机上访问时,在折线中添加包装的div
结果不再显示在我的浏览器中。但是,当我在 Stackblitz 上运行代码时,它运行良好。
任何想法为什么会发生这种情况?我在 @agm/core 的两个版本(1.0.0 和 3.0.0-beta.0)上本地尝试过,每次都得到相同的结果。
Github 在这里。
解决方案
使用 ng-container 代替 div。
当您使用 div 标签时,它们会被插入到 DOM 中,这会干扰页面的样式和结构。
相反,ng-container 标签被排除在 DOM 之外,但可以像现在一样使用 ngIf 和其他 Angular 构造。
<agm-map [latitude]="lat" [longitude]="lng">
<agm-polyline [strokeColor]="'blue'">
<ng-container *ngFor="let waypoint of waypoints">
<agm-polyline-point *ngIf="boolean" [latitude]="waypoint.lat" [longitude]="waypoint.lng"></agm-polyline-point>
</ng-container>
</agm-polyline>
</agm-map>
推荐阅读
- ios - 无法在警报 SwiftUI 中格式化文本
- ios - 如何配置 Mailgun 以与 Sign in with Apple 和 Apple 的中继服务一起使用?
- amazon-web-services - 使用 nodeJs 将文件上传到 s3 存储桶而不使用 AWS 控制台
- python - 如何将列分隔符添加到 Pandas 数据框显示
- python - 不同模型的训练精度不同,但测试精度相同
- spring-boot - 如何处理 Elasticsearchn CRUD 操作的负 JUNIT 测试用例
- python - 如何在python中打印出txt文件的字典值的完整列表
- docker - 解决命令在 pod Kubernetes 中以退出代码 137 终止
- regex - 在 Python 中通过多个分隔符将一列拆分为两列
- sql - 如何以编程方式在 SQL LIKE 中转义通配符?