Куда выводятся события «ошибки» `IDBOpenDBRequest`?

#indexeddb

#indexeddb

Вопрос:

Каково значение событий "error" типа, отправляемых при IDBOpenDBRequest (т.е. open и deleteDatabase ), которые описываются как пузырьковые? Должны ли они всплывать в window или они на самом деле никуда не ведут?*

(И в качестве дополнительного вопроса, аналогично ли «всплывают» события «ошибки» в нестандартном webkitGetDatabaseNames , и если да, то где?)

* В спецификации указано:

Запуск событий «success» или «error» не соответствует обычным шагам для запуска события success или события error, поскольку во время их запуска нет активной транзакции.

Ответ №1:

Это проблема спецификации:

https://github.com/w3c/IndexedDB/issues/86

Похоже, что это ошибка «копировать / вставить» в спецификации, но когда window.onerror (и соответствующий глобальный перехват ошибок в workers и т.д.) интегрирован, Это будет иметь значение. Firefox уже реализует.

Chrome — единственный браузер, который реализует нестандартные webkitGetDatabaseNames и пока не реализует глобальные отчеты об ошибках, поэтому они никуда не уходят.

Комментарии:

1. То есть вы имеете в виду, что в настоящее время это не должно быть описано в спецификации как таковое, но в любом случае, когда window.onerror и т.д. Добавляются в спецификацию, Это должно (продолжать) указывать на наличие пузырьков? И я предполагаю, что другие всплывающие события также будут переходить к window.error ? И третий связанный с этим вопрос: единственный другой путь для переноса в спецификации (((IDBRequest->)IDBTransaction->)IDBDatabase->)window.error (once available and only for errors) ?

2. Извините, теперь, когда Github снова подключен к Сети, я вижу, что ответы на мои вопросы должны быть: 1. Да 2. Да. 3. Да (кроме workers)