Предназначен для представления данных в виде , который умеет оповещать своих об изменении данных
Полезно в случаях, когда есть какие-то данные, которые могут изменяться со временем. В этом случае данные полезно обернуть в SourceWithPool, чтобы посетители данных могли сами решить нужно их уведомлять или не нужно и они сами себя удалят из PatronPool внутри SourceWithPool
Пример 1.
import { SourceWithPool, Patron } from "patron-oop";
const source = new SourceWithPool("один");
source.value((value) => {
document.querySelector(
".source-result-1"
).textContent = `Результат гостя = ${value}`;
});
source.value(
new Patron((value) => {
document.querySelector(
".source-result-2"
).textContent = `Результат патрона = ${value}`;
})
);
setTimeout(() => {
source.give("два");
});
Результат 1.