Доброго времени суток! Никак не могу разобраться как бороться с новым суеркрутым механизмом turbolinks. Сразу скажу, что отключение turbolinks легко и просто решает проблему, но мы не ищем легких путей, да и фича крутая - не хотелось бы ее лишаться из-за такой проблемы.
Идея: Каждый промежуток времени (например, 500мс) отправляем запрос на сервер. В ответ получаем JSON и уже с ним работаем.
Проблема: js код разместил в парциале бокового меню (знаю что вообще-то есть coffee скрипт и т.д. Прошу тапками пока не кидать). Но при переходе по ссылкам где этого бокового меню и в помине нет, запросы продолжают генерироваться. А если ходить по ссылкам, где боковое меню есть, то количество запросов увеличивается пропорционально количеству посещенных страниц. Соответственно
обновление страницы решает проблему.
Вопрос: Как победить проблему? Перенести js код куда-либо? Или заюзать гем jQuery.turbolinks (пробовал, но эффекта не было)?
Код:
setInterval(function(){
$.ajax({
type: "POST",
url: "/sidebar",
data: "user=" + <%= current_user.id %> + "&cpe=" + <%= @cpe_instance.id %>,
success: function(msg){
if (msg.error == "no") {
console.log("Some message here...");
}
else {
console.log(msg.error);
}
}
});
}, 500);
Заранее спасибо всем откликнувшимся за помощь!