esphome-webserver
esphome-webserver copied to clipboard
v3 - Sometimes sorting order gets mixed up on page reload
Occasionally, when the page reloads, the sorting order defined by web_server_sorting_weight
gets mixed up. This issue becomes more noticeable with an increasing number of sensors and more frequent updates.
https://github.com/user-attachments/assets/dff1791f-d979-4a6c-b0ca-880cc3af7d1a
esphome:
name: test
platformio_options:
upload_speed: 1500000
board_build.f_cpu: 240000000
esp32:
board: esp32dev
framework:
type: esp-idf
wifi:
ssid: !secret wifi_ssid
password: !secret wifi_password
power_save_mode: none
fast_connect: true
logger:
level: ERROR
api:
password: !secret api_password
ota:
platform: esphome
web_server:
port: 80
version: 3
number:
- platform: template
name: 1
id: number1
optimistic: true
min_value: 0
max_value: 100
step: 1
web_server_sorting_weight: 1
- platform: template
name: 2
id: number2
optimistic: true
min_value: 0
max_value: 100
step: 1
web_server_sorting_weight: 2
- platform: template
name: 3
id: number3
optimistic: true
min_value: 0
max_value: 100
step: 1
web_server_sorting_weight: 3
- platform: template
name: 4
id: number4
optimistic: true
min_value: 0
max_value: 100
step: 1
web_server_sorting_weight: 4
- platform: template
name: 5
id: number5
optimistic: true
min_value: 0
max_value: 100
step: 1
web_server_sorting_weight: 5
interval:
- interval: 100ms
then:
- lambda: |-
auto call = id(number1)->make_call();
call.number_increment(true);
call.perform();
- interval: 100ms
then:
- lambda: |-
auto call = id(number2)->make_call();
call.number_increment(true);
call.perform();
- interval: 100ms
then:
- lambda: |-
auto call = id(number3)->make_call();
call.number_increment(true);
call.perform();
- interval: 100ms
then:
- lambda: |-
auto call = id(number4)->make_call();
call.number_increment(true);
call.perform();
- interval: 100ms
then:
- lambda: |-
auto call = id(number5)->make_call();
call.number_increment(true);
call.perform();