You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular 19+能否创建依赖两个信号的linkedSignal?

Angular 19+ 中使用 linkedSignal 依赖多个信号

当然可以让 linkedSignal 同时依赖多个信号。linkedSignal 的核心机制是自动追踪其 computation 函数内部读取的所有信号——只要你在计算逻辑中访问了多个信号,linkedSignal 就会自动将它们纳入依赖列表,当其中任意一个信号的值发生变化时,都会触发计算逻辑重新执行。

以下是依赖两个信号的示例代码:

import { signal, linkedSignal } from '@angular/core';

const sourceSignal1 = signal(10);
const sourceSignal2 = signal(20);

const updatedSignal = linkedSignal({
  source: sourceSignal1,
  computation: () => {
    // 读取两个信号的值,自动建立依赖关系
    return sourceSignal1() + sourceSignal2();
  },
});

需要注意的是,linkedSignal 的 source 参数仅需指定一个基础信号即可,Angular 信号系统会自动捕获 computation 中访问的所有额外信号作为依赖。如果只是单纯需要基于多信号的计算值,signal.computed() 也是常用方案,但 linkedSignal 更适合需要双向关联(写入操作同步回源信号)的场景。

内容的提问来源于stack exchange,提问作者Denis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 17:19:50