第一次单击新组件时,如何使新组件弹出选项列表?
how to make the new component popup a list of option when the first click on the new component?
我的来源位于 here。
我有一个输入框,我把很多特征放到输入框里(左边那个)。
我想把它打包成一个组件(正确的那个)。
幸运的是新组件工作正常,除了第一次点击响应。
原先的输入框会在第一次点击输入框时弹出一个选项列表
但是,新组件在第一次点击组件时不会弹出选项列表,
该组件会在第一次点击后或按下某个键时弹出一个选项列表。
我该如何解决这个问题?
您的问题出在生命周期挂钩上。当您在组件构造函数中分配 this.filteredDivisionList = this.divisionList;
时, this.divisionList
是 undefined
或 null
,使用 ngOnChnages()
生命周期钩子分配 input()
值,因为这个方法:
在 Angular(重新)设置数据绑定输入属性时响应。该方法接收当前和先前 属性 值的 SimpleChanges
对象。
在 ngOnInit()
之前以及每当一个或多个数据绑定输入属性更改时调用。''
我的来源位于 here。
我有一个输入框,我把很多特征放到输入框里(左边那个)。
我想把它打包成一个组件(正确的那个)。
幸运的是新组件工作正常,除了第一次点击响应。
原先的输入框会在第一次点击输入框时弹出一个选项列表
但是,新组件在第一次点击组件时不会弹出选项列表,
该组件会在第一次点击后或按下某个键时弹出一个选项列表。
我该如何解决这个问题?
您的问题出在生命周期挂钩上。当您在组件构造函数中分配 this.filteredDivisionList = this.divisionList;
时, this.divisionList
是 undefined
或 null
,使用 ngOnChnages()
生命周期钩子分配 input()
值,因为这个方法:
在 Angular(重新)设置数据绑定输入属性时响应。该方法接收当前和先前 属性 值的 SimpleChanges
对象。
在 ngOnInit()
之前以及每当一个或多个数据绑定输入属性更改时调用。''