Before an [up-hungry] element is added to a render pass, an event up:fragment:hungry is emitted on that element.
You may prevent the up:fragment:hungry event to exclude a hungry element from the render pass.
Use this to define arbitrary conditions for when a hungry element should be updated.
For example, the following would update a hungry element only for render passes that update history:
element.addEventListener('up:fragment:hungry', function(event) {
if (!event.renderOptions.history) event.preventDefault()
})
You may also define conditions based on the new element that a hungry element would be swapped with.
The following would skip an update if the new element has the class .is-empty:
element.addEventListener('up:fragment:hungry', function(event) {
if (event.newFragment.classList.contains('is-empty')) {
event.preventDefault()
}
})
Prevents the hungry element from being targeted in the current render pass.