Könnte mir bitte jemand sagen, wie ich in FTUI3 eine lokale Variable, z.B.
local:floor
beim Laden einer Seite (oder einer tab-view) mit einem String vorbelegen kann?
Zweite Frage: Wie kann ich den Wert dieser Variablen in einer (beliebigen) JavaScript-Funktion verwenden oder setzen?
LG
pah
Interessant und tricky, aber es geht
<!DOCTYPE html>
<html>
<head>
<base href="../" />
<script src="ftui.js"></script>
<link href="ftui.css" rel="stylesheet">
<link href="themes/ftui-theme.css" rel="stylesheet">
<link href="favicon.ico" rel="icon" type="image/x-icon" />
<script type="module">
import * as ftuiHelper from './modules/ftui/ftui.helper.js';
document.addEventListener('ftuiComponentsAdded', () => {
const now = ftuiHelper.dateFormat(new Date(), 'YYYY-MM-DD hh:mm:ss');
const parameterId = 'local-test';
const value = 'Hello, World!';
ftuiApp.fhemService.updateReadingItem(parameterId, {
id: parameterId,
invalid: false,
value,
time: now,
update: now,
});
});
</script>
<title>FTUI Local test</title>
</head>
<body>
<ftui-label size="3" [text]="local:test"></ftui-label>
</body>
</html>
Wenn ich das richtig sehe, wird damit die FTUI3-interne Darstellung eines (fiktiven) FHEM-Readings geschrieben.
Damit geht das auch schneller, weil der TimeStamp bedeutungslos ist und durch ein Datum in der Vergangenheit ersetzt werden kann:
document.addEventListener('ftuiComponentsAdded', () => {
const now = "2025-01-01 12:00:00";
const value = 'DG';
ftuiApp.fhemService.updateReadingItem('local-test', {
id: 'local-test',
invalid: false,
value,
time: now,
update: now,
});
});
Ich habe mir den Spaß gemacht und dazu eine Seite ins Wiki aufgenommen.
LG
pah