simplyfy code svg value mqtt
This commit is contained in:
@@ -64,36 +64,28 @@ const listenMessage = (callback) => {
|
||||
});
|
||||
};
|
||||
|
||||
const listenMessageState = (setState) => {
|
||||
const setValSvg = (listenTopic, svg) => {
|
||||
client.on('message', (topic, message) => {
|
||||
const msgObj = {
|
||||
date: new Date().toLocaleString(),
|
||||
topic: topic,
|
||||
msg: JSON.parse(message),
|
||||
};
|
||||
setState(msgObj);
|
||||
if (topic == listenTopic) {
|
||||
const objChanel = JSON.parse(message);
|
||||
|
||||
Object.entries(objChanel).forEach(([key, value]) => {
|
||||
// console.log(key, value);
|
||||
const el = svg.getElementById(key);
|
||||
if (el) {
|
||||
if (value === true) {
|
||||
el.style.display = ''; // sembunyikan
|
||||
} else if (value === false) {
|
||||
el.style.display = 'none';
|
||||
} else if (!isNaN(value)) {
|
||||
el.textContent = Number(value ?? 0.0);
|
||||
} else {
|
||||
el.textContent = value;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
const setValSvg = (msgValue, topic, svg) => {
|
||||
if (msgValue.topic == topic) {
|
||||
const objChanel = msgValue?.msg;
|
||||
Object.entries(objChanel).forEach(([key, value]) => {
|
||||
// console.log(key, value);
|
||||
const el = svg.getElementById(key);
|
||||
if (el) {
|
||||
if (value === true) {
|
||||
el.style.display = ''; // sembunyikan
|
||||
} else if (value === false) {
|
||||
el.style.display = 'none';
|
||||
} else if (!isNaN(value)) {
|
||||
el.textContent = Number(value ?? 0.0);
|
||||
} else {
|
||||
el.textContent = value;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
export { publishMessage, listenMessage, listenMessageState, setValSvg };
|
||||
export { publishMessage, listenMessage, setValSvg };
|
||||
|
||||
Reference in New Issue
Block a user