Cześć!
Chodzi o używanie, w ramach custom-button, elementów takich jak <ha-textfield>, <ha-slider>, <ha-select>, itp. bezpośrednio, bez kart/encji. Może ktoś ma na to jakiś dobry patent?
Cel:
- fragmenty UI bez mnożenia pomocników (zamiast tego zapis danych w sensorze trigger-based)
- fragmenty UI, których można używać niezależnie na różnych przeglądarkach (osobna kopia danych dla każdej przeglądarki)
Druga sprawa, powiązana z powyższym: znacie jakiś “cywilizowany” sposób na wykonanie własnego kodu javascript zaraz po wyrysowaniu custom-buttona? Jeden znalazłem, ale mi się nie podoba: w custom_field tworzę nieprawidłowy element html razem z atrybutem onError (funkcją w postaci tekstu) → gwarantuje to wywołanie w.w. funkcji i tam, po naprawieniu błędnego elementu, mogę wywołać swój kod. Poniżej “cywilizowane” próby, które nie działają:
Próby
type: custom:button-card
variables:
test: |
[[[
window.addEventListener('load', (e) => {
console.log('loaded1!');
}, false);
window.document.addEventListener('load', (e) => {
console.log('loaded2!');
}, false);
this.ownerDocument.addEventListener('load', (e) => {
console.log('loaded3!');
}, false);
this.addEventListener('load', (e) => {
console.log('loaded4!');
}, false);
this.shadowRoot.addEventListener('load', (e) => {
console.log('loaded5!');
}, false);
return 'abc';
]]]