Javascript 角度8-通过拖放重新排列动态创建的组件

Javascript 角度8-通过拖放重新排列动态创建的组件,javascript,html,angular,typescript,angular-material,Javascript,Html,Angular,Typescript,Angular Material,我目前正在创建一个动态问卷生成器,用户可以从输入字段列表中进行选择(例如文本框、复选框)。我通过ComponentFactoryResolver动态创建输入字段。我的问题是,当我通过拖放重新排列创建的组件时,这些组件本身并没有正确地重新排列 我试着跟着这个。但我们有同样的问题 我正在创建这样的组件 public addField(问题回复:any):无效{ 删除组件时订阅 this.droplistREf = this.dragDrop.createDropList(this.fi

我目前正在创建一个动态问卷生成器,用户可以从输入字段列表中进行选择(例如文本框、复选框)。我通过ComponentFactoryResolver动态创建输入字段。我的问题是,当我通过拖放重新排列创建的组件时,这些组件本身并没有正确地重新排列

我试着跟着这个。但我们有同样的问题

我正在创建这样的组件 public addField(问题回复:any):无效{

删除组件时订阅

       this.droplistREf = this.dragDrop.createDropList(this.fieldList);
       this.droplistREf.dropped.subscribe(a => {
         // cant get the componentRef here to rearrange component
       });
     } 
重新排列动态组件位置的代码

 public rearrangeQuestionnairePosition(): void {
    this.formQuestionnaireRef.move(this.componentInstance.hostView, componentPosition);
  }
问题是,我不能使用ReagineQuestionNaiResolution函数来重新排列动态创建的组件,因为我没有componentRef的实例

我使用的拖放角材料顺便说一句

 public rearrangeQuestionnairePosition(): void {
    this.formQuestionnaireRef.move(this.componentInstance.hostView, componentPosition);
  }