Skip to content

batch

Groups multiple signal updates so an effect runs only once after all updates.

import { signal, batch } from '@hellajs/core';
// Create signals for form state
const username = signal('');
const email = signal('');
const isSubmitting = signal(false);
const isSuccess = signal(false);
function submitForm() {
batch(() => {
isSubmitting(true);
// Simulate async form submission
setTimeout(() => {
batch(() => {
isSubmitting(false);
isSuccess(true);
username('');
email('');
});
}, 1000);
});
}