Categories: ASP.NET

Использование $connection.hub.start().done в нескольких местах приложения

Иногда возникает необходимость использовать конструкцию:

$connection.hub.start().done

несколько раз и в разных местах приложения. При этом такая запись иногда может привести к ошибке вида:

SignalR: Connection has not been fully initialized. Use .start().done() or .start().fail() to run logic after the connection has started.

Чтобы избежать этого, вы можете создать отложенный объект на старте, который будет доступен на всех остальных страницах, например, через глобальную переменную:

// --- outside of the user controls, e.g. on the container page ---
$(function() {
  window.hubReady = $.connection.hub.start();
});
 
// --- in your other pages ---
$(function() {
    window.hubReady.done(function() {
        // call hub method
    });
});

Ссылка на оригинал.

 

 

 

Руслан Раянов

Recent Posts

Форма теста внешних действий #falconstart

Вызов внешних действий - это возможность действия, выходящего за рамки возможности работы с БД через…

3 недели ago

Концепция внешних действий – telegram, email, уведомления на сайте

Вызов внешних действий - это возможность действия, выходящего за рамки возможности работы с БД через…

3 недели ago

Работа с JSON в SQL #falconstart

После выполнения действий в SQL на клиенте иногда возникает необходимость что-то обновить или сделать. Для…

4 недели ago

Форма с отправкой запроса API. Тестирование исходящих запросов #falconstart

Вы можете обратиться к внешним API через использование Внешних действий (код apirequest, использование описано в…

4 недели ago

Таблица Trace для отслеживания событий на сайте

В системной таблице as_trace хранятся данные по работе приложения. Поле code определяет тип события: DBLREQ…

4 недели ago

Работа с ошибками в системе. Генерация отчета по ошибкам #falconstart

Рассмотрим механизм анализа ошибок, как это всё работает, и как его использовать. Когда происходит ошибка…

4 недели ago