条件卡片

条件卡片根据条件显示另一张卡片。

条件卡片的截图

要将 条件卡片 添加到您的用户界面:

  1. 在屏幕右上角,选择编辑 按钮。
    • 如果这是您第一次编辑仪表板,将会出现 编辑仪表板 对话框。
      • 通过编辑仪表板,您将接管此仪表板的控制。
      • 这意味着当新的仪表板元素可用时,它将不再自动更新。
      • 一旦您接管控制,就无法将此特定仪表板恢复为自动更新状态。但是,您可以创建一个新的默认仪表板。
      • 要继续,请在对话框中选择三点菜单 ,然后选择 接管控制
  2. 添加卡片并自定义操作和功能 到您的仪表板。

请注意,在编辑仪表板时,卡片将始终显示,因此请确保退出编辑模式以测试条件。

条件卡片仍然可以使用。然而,现在可以直接在每种卡片类型的可见性选项卡上定义一个设置,以有条件地显示或隐藏卡片。

大多数用于此卡片的选项可以通过用户界面进行配置。

YAML 配置

当您使用 YAML 模式或仅希望在 UI 的代码编辑器中使用 YAML 时,可以使用以下 YAML 选项。

Configuration Variables

type string Required

条件

conditions list Required

要检查的条件列表。请参见可用条件

card map Required

如果所有条件匹配,则显示的卡片。

示例

仅在满足所有条件时显示:

type: conditional
conditions:
  - condition: state
    entity: light.bed_light
    state: "on"
  - condition: state
    entity: light.bed_light
    state_not: "off"
  - condition: user
    users:
      - 581fca7fdc014b8b894519cc531f9a04
card:
  type: entities
  entities:
    - device_tracker.demo_paulus
    - cover.kitchen_window
    - group.kitchen
    - lock.kitchen_door
    - light.bed_light

示例条件,其中只需要满足一个条件:

type: conditional
conditions:
  - condition: or
    conditions:
      - condition: state
        entity: binary_sensor.co_alert
        state: 'on'
      - condition: state
        entity: binary_sensor.rookmelder
        state: 'on'
card:
  type: entities
  entities:
    - binary_sensor.co_alert
    - binary_sensor.rookmelder

条件选项

状态

测试一个实体是否具有指定状态。

condition: state
entity: climate.thermostat
state: heat
condition: state
entity: climate.thermostat
state_not: "off"

Configuration Variables

condition string Required

state

entity string Required

实体 ID。

state list | string (Optional)

实体状态或 ID 必须等于此值。可以包含状态数组。*

state_not list | string (Optional)

实体状态或 ID 不得等于此值。可以包含状态数组。*

*必须有一个(statestate_not

数值状态

测试实体状态是否符合阈值。

condition: numeric_state
entity: sensor.outside_temperature
above: 10
below: 20

Configuration Variables

condition string Required

numeric_state

entity string Required

实体 ID。

above string (Optional)

实体状态或 ID 必须高于此值。*

below string (Optional)

实体状态或 ID 必须低于此值。*

*至少需要一个(abovebelow),也可以用于值之间的两者。

屏幕

根据屏幕大小指定卡片的可见性。一些屏幕大小预设在 UI 中可用,但您可以在 YAML 中使用您想要的任何 CSS 媒体查询。

condition: screen
media_query: "(min-width: 1280px)"

Configuration Variables

condition string Required

screen

media_query string Required

用于检查哪些屏幕大小可以显示卡片的媒体查询。

用户

根据用户指定卡片的可见性。

condition: user
users:
  - 581fca7fdc014b8b894519cc531f9a04

Configuration Variables

condition string Required

user

users list Required

可以查看卡片的用户 ID(在用户配置页面上找到的唯一十六进制值)。

指定必须满足两个条件。

condition: and
conditions:
  - condition: numeric_state
    above: 0
  - condition: user
    users:
      - 581fca7fdc014b8b894519cc531f9a04

Configuration Variables

condition string Required

and

conditions list (Optional)

要检查的条件列表。请参见可用条件

指定至少必须满足一个条件。

condition: or
conditions:
  - condition: numeric_state
    above: 0
  - condition: user
    users:
      - 581fca7fdc014b8b894519cc531f9a04

Configuration Variables

condition string Required

or

conditions list (Optional)

要检查的条件列表。请参见可用条件