For AI agents: the complete documentation index is available at /llms.txt, the full documentation bundle is available at /llms-full.txt, and this page is available as Markdown at /developers/blog/2022-06-14-number_entity_refactoring.md.

重构 Number entity 以支持单位转换

NumberEntity 现在支持温度单位转换,采用的模式与 SensorEntity 支持的单位转换类似。

对于 device class 设置为 temperature 的 number entities,温度转换将根据用户配置的温度单位自动进行。

为此,custom component 集成应更新为覆写属性 native_max_valuenative_min_valuenative_stepnative_unit_of_measurementnative_value,而不是 max_valuemin_valuestepunit_of_measurementvalue,并覆写方法 async_set_native_valueset_native_value,而不是 async_set_valueset_value

同样的重命名也已应用于 _attr_* 属性和 NumberEntityDescription 的成员。

在 Home Assistant Core 2023.1 中,覆写 async_set_valuemax_valuemin_valueset_valuestepunit_of_measurementvalue,设置 _attr_max_value_attr_min_value_attr_unit_of_measurement_attr_step_attr_value 以及在 NumberEntityDescription 实例上设置 max_valuemin_valueunit_of_measurementstep 将不再受支持。