Я создаю одностраничное приложение, состоящее только из статических HTML, JS и CSS. Мне нужно поддерживать IE9 +, современные настольные браузеры и iOS 6+.Должен ли я встроить все CSS и JS для статического SPA?
Веб-сайт построен с использованием grunt, и я рассматриваю возможность вложения всех JS и CSS в HTML-файл, что упростит обработку немного.
Поскольку не существует содержимого, сгенерированного сервером, а также кэшируется страница .html, вы видите какие-либо подводные камни или недостатки при инкрустации всех JS и CSS? Насколько я понимаю, это может даже повысить производительность, поскольку для браузера меньше обращений, но, возможно, есть веские причины не встраивать эти (довольно огромные) файлы?
У вас есть опыт работы с этим?
[Изменить] Кажется, что это неясно. Я не хочу вручную поместить все JS и CSS, с которыми я работаю, в полученный HTML-файл. У меня есть чистая структура проекта, и подумайте о том, чтобы позволить grunt генерировать встроенную версию как выпуск. Я не буду работать с встроенной версией, ни для разработки, ни для отладки. Мой вопрос касается только технической части: будет ли какое-либо негативное влияние на браузер (за исключением кеширования, весь код html кэширован, и я могу жить с его недействительностью в целом)? Почему встраивание в результате автоматизированного процесса сборки по-прежнему считается плохой практикой (за исключением темы кэширования)?
Работает ли над этим приложением более одного разработчика? Если это так, совместное использование одного большого файла может создать проблему. Вы считаете, что трудно перемещаться по одному большому файлу в редакторе? – DaveB
@DaveB да, я работаю в команде, но это не имеет значения, так как это результат процесса сборки Grunt. Есть две версии, построенные по нашей конфигурации, одна версия и еще одна, которая не была уменьшена, сжата (и не будет встроена), так что это не проблема – muffel