Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 如果我隐藏一个元素,如何检测屏幕大小是否在角度上发生了变化?_Angular_Typescript - Fatal编程技术网

Angular 如果我隐藏一个元素,如何检测屏幕大小是否在角度上发生了变化?

Angular 如果我隐藏一个元素,如何检测屏幕大小是否在角度上发生了变化?,angular,typescript,Angular,Typescript,我目前正在开发一个联系人表单。如果表单提交成功,我将隐藏它。问题是,在这种情况下,页脚会出现,因为联系人表单是隐藏的: <div class="form-wrapper mat-elevation-z1" [hidden]="successfullySent"> ..... </div> 那么,有人知道我如何从联系人组件调用此脚本,或者以某种方式检测页脚组件中DOM的更改吗?在这种情况下,您可以使用行为子对象 hideItem = new BehaviorSu

我目前正在开发一个联系人表单。如果表单提交成功,我将隐藏它。问题是,在这种情况下,页脚会出现,因为联系人表单是隐藏的:

<div class="form-wrapper mat-elevation-z1" [hidden]="successfullySent">
    .....
</div> 

那么,有人知道我如何从联系人组件调用此脚本,或者以某种方式检测页脚组件中DOM的更改吗?

在这种情况下,您可以使用
行为子对象

hideItem = new BehaviorSubject<boolean>(false);

在这种情况下,可以使用
BehaviorSubject

hideItem = new BehaviorSubject<boolean>(false);

您可以为您的
成功发送使用setter

类组件{
set successfullySent(v:boolean){
这个._successfullySent=v;
如果(v){
this.stickyFooter();//或this.onResize();
}
}
get successfullySent():布尔值{
返回此。\u成功;
}
private _successfullySent:boolean;
}

您可以为您的
成功使用setter

类组件{
set successfullySent(v:boolean){
这个._successfullySent=v;
如果(v){
this.stickyFooter();//或this.onResize();
}
}
get successfullySent():布尔值{
返回此。\u成功;
}
private _successfullySent:boolean;
}

为什么要使用
string
而不是
boolean
?我现在已经让它工作了,但问题是当变量发生更改时,脚本被提前调用,但DOM需要一些mil。瑞典克朗。换衣服。有什么想法吗?我加了5秒就证明了这一点。执行前超时。为什么要使用
string
而不是
boolean
?我现在已经让它工作了,但问题是当变量发生更改时,脚本被提前调用,但DOM需要一些mil。瑞典克朗。换衣服。有什么想法吗?我加了5秒就证明了这一点。执行前超时。
this.hideItem.subscribe(successfullySent=>{
            // if successfullySent
})