我问一个问题,它已经在这里得到了解答,但我认为我的特殊情况会让事情变得复杂一些。事情就是这样。
我正在使用Angular2,我正在创建几个组件(组件显示Card,Carousel,tooltip..ecc ..)。每个组件都有自己的标记,我用它将它放在我的模板文件中。一切都好。 这是一个例子:
@Component({
selector: 'app-card',
templateUrl: './tb-card.component.html',
styleUrls: ['./tb-card.component.css']
})
export class CardComponent {
@Input() image: string;
@Input() title: string;
@Input() subtitle: string;
}
现在。我有一个谷歌地图,每当用户点击地图时,我想在此地图中显示一个弹出窗口。这个弹出窗口的内容应该是一个角度组件,所以我这样做(使用地图的API)。
map.popup().setLatLng([pos.lat, pos.lng])
.setContent('<app-card title="this is a title" subtitle="this is asubtitle"></app-card>');
当然,角度引擎不处理app-card标签。如果我只是附加一个带有jquery的app-card组件,就会出现同样的问题。
我看到其他问题类似,表示我应该使用ComponentResolver(How can I inject an AngularJS 2 component dynamically in JQuery?)
问题是:该示例开始时认为存在一个“主”组件(称为动态组件),它已经在DOM中,我应该使用此组件作为“桥”来注入其他组件。但我没有它(我在谷歌地图内)。除非我把这个组件放在我的页面上的某个地方,然后我在地图上分离并附加,但我真的不喜欢这个技巧。
有没有人有同样的问题? 非常感谢所有能帮助我的人! :)