我有一个服务,它有一个可以做某事的方法。
service.ts:
doSomething() {
// Does something here
}
此服务与以下组件进行对话:
myComponent.ts
我有:myComponent.html有一个div:
<div class="myDiv">Something Here</div>
我想要的是在服务doSomething()方法中按代码显示和隐藏div。
喜欢这样:
doSomething() {
1. Show myDiv
2. // Do something here
3. Hide myDiv
}
我该怎么做?
答案 0 :(得分:5)
特别是我在doSomenthing()方法中插入一组标志值来控制div。
<强> COMPONENT 强>
doSomething() {
service
.doSomething()
.subscribe(
r => {
this.show = true;
2. // Do something here
this.show = false;
}
);
}
<div *ngIf="show" class="myDiv">Something Here</div>
但是这段代码必须留在不在服务中的组件中。
答案 1 :(得分:3)
将ngIf属性添加到标记:
*ngIf="IAmDoingSomething"
在组件中,您可以执行以下操作:
export class MyDoSomethingComponent{
public IAmDoingSomething = false;
...
invokeServices = async () => {
this.IAmDoingSomething = true;
await doSomething();
this.IAmDoingSomething = false;
}
...
}