小编Mic*_*ael的帖子

如何防止 Angular 中的多个订阅调用?

我有一个消息服务,用于在各个组件之间进行交互。我只想在单击Mine按钮时触发一条消息。到目前为止这有效。但是当我单击<>按钮时,它会触发getMessage(),以便将值相加。但当我单击 时,我只想发送一个值Mine。仅最后一个值。getMessage()单击<和时如何防止触发>

当我点击 时<>它会在卡片之间从 1 切换到 10。当我点击时,Mine它应该只获取我所在的卡片并将信息从该块发送到另一个组件。但相反,当我单击<或 时>getMessage()会被调用,它会添加所有卡片,直到我单击Mine。我该如何防止这种情况发生?

下面是一些代码。我试图保持紧凑:

消息服务.ts:

@Injectable({ providedIn: 'root' })
export class MessageService {
  private subject = new Subject<any>();

  sendMessage(message: string) {
    this.subject.next({ text: message });
  }

  getMessage(): Observable<any> {
    console.log('Get Message Message Service');
    return this.subject.asObservable();
  }
Run Code Online (Sandbox Code Playgroud)

矿工卡.组件:

  message: any;
  subscription: Subscription;

  constructor(private ref: ChangeDetectorRef, private …
Run Code Online (Sandbox Code Playgroud)

subscription typescript angular

5
推荐指数
1
解决办法
1万
查看次数

Angular 7 Material Card 最大高度和可滚动

我的应用程序使用网格布局。在左下角的网格中,我使用的是 Material Cards。卡片具有动态内容,这意味着卡片的高度不同。如何设置卡片的最大高度,以便它们不会在屏幕末尾被切断?由于卡片具有动态内容,我如何使卡片可滚动?

在此处输入图片说明

angular-material angular

4
推荐指数
1
解决办法
5788
查看次数

Angular 7:访问数组中的列表元素

我正在尝试获取列表的一个组成部分。该列表位于数组中。如何获取列表中的某一特定组成部分?在本例中,我试图获取 hierarchialGraph.links 的“source”元素。

代码:数组的打字稿(只是一个片段):

showGraph() {
    this.hierarchialGraph.nodes = [
      {
        id: '1',
        label: '1',
        position: 'x1'
      }
       ....
    ];

    this.hierarchialGraph.links = [
      {
        source: '1',
        target: '2',
        label: '1'
      }
       ....
    ];
  }
Run Code Online (Sandbox Code Playgroud)

这是我对如何访问其中一个链接元素的源的第一个想法。但它最终不适用于 .source 。

 getNeighborNode(string) {
    for (const i of this.hierarchialGraph.links) {
      if (string === this.hierarchialGraph.links[i].source) {
        ...
      }
    }
 }
Run Code Online (Sandbox Code Playgroud)

arraylist typescript angular

1
推荐指数
1
解决办法
4024
查看次数