Что такое «аннулирование» в этом примере Observablehq?

#javascript #d3.js #promise #observablehq

Вопрос:

https://observablehq.com/@d3/force-directed-lattice?collection=@d3/d3-drag

там есть строка

invalidation.then(() => simulation.stop());

что это за признание недействительным? с помощью console.log это обещание, но я нигде не вижу, чтобы оно было определено.

Ответ №1:

Observablehq загружает стандартную библиотеку, которая предоставляет invalidation метод. Согласно документации, invalidation есть…

Обещание, которое разрешается при повторной оценке текущей ячейки: при изменении кода ячейки, при ее запуске с помощью Shift-Enter или при изменении ввода, на который ссылается.

Эта записная книжка подробно объясняет это: https://observablehq.com/@observablehq/invalidation