Как создать панель загрузки в стиле Youtube с помощью Turbolinks в Rails 4?

Есть ли способ сделать панель загрузки в стиле Youtube (межстраничный через верхнюю панель) с турбо-ссылками.

Turbolinks имеет множество различных обратных вызовов, так что вы можете сделать рывок через несколько шагов, но есть ли способ также зацепиться за прогресс?


person MintDeparture    schedule 19.08.2013    source источник


Ответы (7)


nprogress-rails, вероятно, именно то, что вам нужно.

person Sunil    schedule 15.09.2013
comment
Это не имеет ничего общего с жизненным циклом турболинков. - person MintDeparture; 18.09.2013
comment
Мы сами сейчас этим пользуемся. @Smickie неверен, у драгоценного камня есть крючки для интеграции и запуска индикатора выполнения с несколькими различными методами, в частности с Turbolinks, Pjax и Ajax. - person Brad Murray; 04.11.2013
comment
очень красивое и простое в реализации решение - person cwd; 28.05.2014
comment
Могу подтвердить - отлично работает вместе с турбоссылками, а также имеет тему Bootstrap - очень простое решение. - person jonosl; 21.06.2014

Проверьте версию турболинков:

$ gem list |grep turbolinks
turbolinks (2.5.3)

если ваша версия Turbolinks ‹ 3.0, добавьте приведенный ниже код в файл js (например: application.js).

Turbolinks.enableProgressBar();

если вы используете Turbolinks 3.0, индикатор выполнения включен по умолчанию.

https://github.com/rails/turbolinks#progress-bar.

введите здесь описание изображения

индикатор выполнения можно настроить с помощью CSS, например:

html.turbolinks-progress-bar::before {
  background-color: red !important;
  height: 5px !important;
}

введите здесь описание изображения

person pangpang    schedule 02.09.2015

Предполагая, что у вас правильно настроены Turbolinks, добавьте скрипт nProgress JS в конвейер ресурсов вашего приложения Rails, то есть JS и CSS.

Настройте nProgress, добавив это в свой собственный JS...

$(document).on('page:fetch',   function() { NProgress.start(); });
$(document).on('page:change',  function() { NProgress.done(); });
$(document).on('page:restore', function() { NProgress.remove(); });

И это все.

Ps: посетите страницу nProgress Github для получения дополнительной информации.

person King'ori Maina    schedule 16.12.2013
comment
Спасибо! это ответ на мой вопрос :)! - person 0bserver07; 31.08.2014

Был поднят в https://github.com/rails/turbolinks/issues/265

Не будет добавлен в Turbolinks, но покажет вам простую справку о том, как добавить его, если вам нужно.

person Brad Murray    schedule 19.08.2013
comment
Будет ли это означать ветвление js turbolinks или вы можете добавить его в обычный файл js? - person MintDeparture; 20.08.2013

Вот еще один блестящий JS от Hubspot под названием Pace.

http://github.hubspot.com/pace/docs/welcome/

person Karthik Kamalakannan    schedule 11.01.2015

В настоящее время ProgressBar включен в турболинки (v.2.5.3)

person Yo Ludke    schedule 26.08.2015

Плагин jQuery под названием NG Progress JS, похоже, поддерживает турбо-ссылки. Вот NG Progress и альтернативы.

http://www.webiyo.com/2013/09/youtube-style-ajax-progress-bar-using.html

Надеюсь, поможет.

person Rakesh Waghela    schedule 02.09.2013