Я разрабатываю веб-сайт, но я понял, что, помимо ссылки на мой основной файл javascript и ссылку на файл jquery, он начинает выглядеть так, будто у меня будут ссылки на три или более плагины также. Мне просто интересно, хорошо ли это? Сайт, который я создаю, - это веб-приложение, поэтому мне нужно много функциональности, но я не хочу быть обманом для плагинов. Считается хорошим добавить все плагины javascript вместе в один файл, чтобы загружать только один файл, или я столкнулся с проблемами?
Слишком много плагинов jquery?
Ответ 1
Если плагины будут добавлять значение на ваш сайт, я не вижу, как это будет проблемой. В общем, плагины содержат достаточно кода, чтобы делать то, что они должны были делать. Это делает их использование довольно хорошей практикой по сравнению с использованием одной монолитной библиотеки с большим количеством неиспользуемых функций.
Что касается конкатенации файлов JavaScript вместе, это может помочь с точки зрения производительности загрузки на переднем конце, поэтому я бы рекомендовал это.
Ответ 2
Я работаю над выполнением большого корпоративного веб-сайта, использующего jQuery. Мы обнаружили, что большое количество соединений может действительно убить производительность.
Есть три вещи, которые вы можете сделать с плагинами
- Свернуть javascript, используя Google Closure Compiler.
- Объедините мини-js в одну загрузку, называемую, например, plugins.min.js
- Настройте альтернативный домен для обслуживания js-контента, например http:/scripts.acme.com.
Minified js означает, что он будет быстрее загружаться и анализироваться, объединенный в один файл, сохранит некоторые подключения, а использование файла cookieless уменьшит данные, которые должны быть отправлены на сервер.
Использование CDN, например Google для основного файла jquery, также является хорошей идеей.
Ответ 3
Плохая практика или нет, если вы считаете себя разработчиком, вы должны подумать о том, нужно ли захватить плагин или сделать сам.
Конечно, можно констатировать, почему я должен изобретать колесо, если кто-то уже это делал в прошлом, но я всегда предпочитаю делать что-то самостоятельно, если это не массивный перебор.
Я думаю, что есть много преимуществ, которые делают это самостоятельно, например обслуживание (зная, что происходит постоянно), вы увеличиваете свои знания в области программирования и т.д.
С другой стороны, время - это деньги, чтобы люди могли воплотить это в игру. Это, конечно, сейчас хороший момент. Так что, возможно, вся эта тема сводится к индивидуальному решению.
Ответ 4
Я использую $.getScript() для загрузки плагинов на $(document).ready(). Не знаю, хорошая ли это практика или нет, но это немного уменьшает время загрузки документа и позволяет мне загружать плагины, если это необходимо.
Ответ 5
Ваша единственная проблема будет в обслуживании: обновление версий. это хорошая идея объединить все ваши js вместе, чтобы уменьшить накладные расходы. Я делаю это во время развертывания
Ответ 6
Нет. Неправильно использовать плагин, прежде чем полностью подтвердить себе, что работа не может быть легко выполнена, написав код.
И даже тогда всегда проверяйте обслуживание, репутацию плагина и его тестируемость.
Плагины - это код, написанный третьей стороной. Независимо от того, насколько они хороши, они никогда не подстраиваются под ваши потребности (даже со всеми параметрами параметров).
Есть только один способ для многих плагинов, которые делают так много простых вещей с 4 страницами JS. Проводя 15 минут, вы можете достичь именно того, что хотите в 10-ти строках
Ответ 7
Многие сайты требуют использования большого и часто большого количества файлов JavaScript. Независимо от того, подходит ли это плагинам или настраиваемым сценариям.
В этом случае я бы предложил вам посмотреть на производительность вашего приложения. Например, для сокращения ваших файлов JavaScript и, где возможно, отправьте их клиенту, gzipped с заголовками expire, чтобы они могли кэшироваться.
Ответ 8
Наличие jquery-плагинов в нескольких файлах позволит вам загружать только те файлы, которые необходимы для данной страницы. Если для каждой страницы требуются все плагины, это не поможет.
Кроме того, не забудьте использовать jquery cdn, поэтому время загрузки должно быть быстрее.
Ответ 9
Не знаю, какие технологии вы используете, но я использую http://github.com/jetheredge/bundler (ASP.Net/MVC) от Justin Etheredge.
очень простая структура, которую я мог бы использовать для объединения моего CSS и javascript без особых проблем.
Минимизация и комбинирование JavaScript обрабатывается JSMin. Сжатие Css производится с помощью компрессора YUI.
Если вы используете php, уверен, что будет какая-то альтернатива:) Как упоминалось выше, использование cdn и сокращение HTTP-запросов может принести пользу вашему сайту.