本文主要介绍angular6如何使用ngContentOutlet实现组件位置交换(重排)。小编觉得挺好的。现在分享给大家,给大家一个参考。和小编一起来看看吧。ngContentOutlet指令介绍ngContentOutlet指令类似于ngTemplateOutlet指令,用于动态组件。不同的是前者传入一个Component,后者传入一个TemplateRef。先看使用:其中MyComponent是我们的自定义组件,这个指令会自动创建一个组件工厂,并在ng-container中创建一个视图。实现组件位置交换Angular中的视图是绑定数据的,不建议我们直接操作HTMLDOM元素,建议我们通过操作数据来改变组件视图。首先定义两个组件:button.component.tsimport{Component,OnInit}from'@angular/core';@Component({selector:'app-button',template:``,styleUrls:['./button.component.css']})exportclassButtonComponentimplementsOnInit{constructor(){}ngOnInit(){text.component.tsimport{Component,OnInit,Input}from'@angular/core';@Component({选择器:'app-text',模板:`
`,styleUrls:['./app.component.css']})exportclassAppComponent{publiccomponentArr=[TextComponent,ButtonComponent];constructor(){}publicswap(){consttemp=this.componentArr[0];this.componentArr[0]=this.componentArr[1];this.componentArr[1]=temp;}}
