小编Joo*_*rts的帖子

*ngIf 中的角度异步管道 - 处理 0 值

我有以下 html 片段:

<div *ngIf="calculatedValue$ | async as calculatedValue">
  {{calculatedValue}}
</div>
Run Code Online (Sandbox Code Playgroud)

但如果计算值 $ 的发出值为 0(类型 = 数字),则该 div 将不会显示在 DOM 中。

正确的展示方式是什么?也许是通过将非空检查添加到 *ngIf 的方式。

asynchronous angular

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

减少数组数组,将数据按日期连接到周数据并对值求和

所以我有一组特殊的数据:

data: [
  ['2022-01-17T16:29:24', 30], // these below would aggregate to 210
  ['2022-01-17T17:37:24', 30],
  ['2022-01-17T17:41:40', 30],
  ['2022-01-17T17:41:48', 30],
  ['2022-01-21T12:50:18', 30],
  ['2022-01-21T12:50:18', 30],
  ['2022-01-21T12:50:29', 30],        
  ['2022-01-12T12:50:18', 30], // these below would aggregate to 90
  ['2022-01-12T12:50:18', 30],
  ['2022-01-12T12:50:29', 30]
]
Run Code Online (Sandbox Code Playgroud)

我需要将其减少为周数据集。我会将日期转换为一周的开始以获取周数据moment(day).startOf('isoWeek'),然后将相似日期的数据连接起来并将其减少为单个条目。

最终结果如下:

data: [
  ['2022-01-17T00:00:00', 210],
  ['2022-01-10T00:00:00', 90]
]
Run Code Online (Sandbox Code Playgroud)

但我正在寻找如何使用的建议.reduce()或任何其他更现代的解决方案,这些解决方案将在大型设备上发挥作用。现在我为此嵌套了 for 循环(除了看起来很糟糕之外)可能性能很差,因为它在同一个数组上迭代多次。一项要求是moment应该用于日期操作,请尽量避免使用Dateobj。

现在我有这样的事情:

data: [
  ['2022-01-17T16:29:24', 30], // these below would aggregate to 210
  ['2022-01-17T17:37:24', 30],
  ['2022-01-17T17:41:40', 30],
  ['2022-01-17T17:41:48', 30],
  ['2022-01-21T12:50:18', 30],
  ['2022-01-21T12:50:18', 30], …
Run Code Online (Sandbox Code Playgroud)

javascript momentjs

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

标签 统计

angular ×1

asynchronous ×1

javascript ×1

momentjs ×1