2014-02-12 2 views
7

Я хочу загрузить мои javascripts и таблицы стилей async, чтобы иметь лучшую производительность загрузки; С помощью JavaScript Я знаю, что могу загрузить JavaScripts асинхр с:stylesheet async with rails

javascript_include_tag "application", :async => true

и она работает для JavaScripts. Но это не возможно с stylesheet_link_tag как:

stylesheet_link_tag "application, :media => "all", :async => true

также это «хороший» способ сделать это? благодаря

Я использую рельсы 3.2.12 и рубин 1.8.7

+0

Ruby 1.8.7 был достигнут Конец жизни некоторое время назад - вы действительно должны посмотреть на модернизацию. – sevenseacat

+0

@sevenseacat любым способом сделать это в ruby ​​1.9.2 или 2.0? – joseramonc

+0

проблема не связана с версией Ruby, я просто предлагаю вам действительно обновить приложение до более новой версии. – sevenseacat

ответ

8

Атрибут async не доступен на <link> теге. Он используется только для асинхронной загрузки внешних ресурсов скрипта.

Идея состоит в том, что вы не хотите откладывать загрузку CSS, поскольку она необходима для рендеринга страницы, тогда как javascript часто может быть загружен одновременно с html и выполнен, когда он завершен.

Не имеет смысла, чтобы была опция async для внешних ресурсов css.

+0

Я знаю, что это старый комментарий, но для людей, которые все еще читают это: Async важно, если вы хотите отложить свои некритические стили: https://developers.google.com/web/tools/lighthouse/audits/blocking -Ресурсы – Extranion