Недавно я думаю о том, как объединить фронтальные файлы JS. Конечно, он не включает файлы, которые не могут быть объединены, а файлы, которые мы можем объединить. Подумав об этом, должно быть только три способа.
Три метода следующие:
1. Большой файл, все JS объединяются в один большой файл, и все страницы относятся к нему.
2. Каждая страница является большим файлом, и каждая страница объединяется для создания большого файла вашего собственного JS.
3. Объедините несколько общих больших файлов, объедините несколько общих файлов JS в соответствии с практикой, и каждая страница относится к нескольким общим большим файлам.
Кроме того, на мой взгляд, у Merge есть две цели:
1. Чтобы уменьшить количество запросов.
2. Соображения безопасности кода (чем больше файлов разделены, тем проще его можно увидеть).
PS: Обратите внимание, что я говорю, это не сжатие путаницы, просто слияние
1. Большой файл
Таким образом, чтобы объединить все JS в большой файл независимо от ситуации, и все страницы относятся к нему, даже если какой -то код не может быть использован.
преимущество:
(1). Это просто слияние и простой в использовании.
(2). Другие страницы могут быть загружены с помощью оптимизации кэша.
недостаток:
(1). Страница может быть загружена в коды, которые не используются на этой странице.
Не применимых сценариев:
(1). Этот метод определенно не подходит для крупных веб-приложений, и независимо от количества однолетного кода, сложность бизнеса не позволяет нам делать это (я никогда не видел, чтобы это веб-сайт сделал это).
Применимые сценарии:
(1). Гибридные приложения, независимо от того, являются ли они гибридными приложениями или гибридными приложениями ПК (настольные приложения, аналогичные структуре разработки команды YouDao Hex+Chromium+Nodejs), очень подходят, и не будут проблем с скоростью запроса. Безопасность кода таких приложений, расположенных в коде клиента, более важна.
PS: Конечно, самое важное - это безопасность бэкэнда. Независимо от того, является ли фронт, взломан, улучшает ли бэкэнд проверка ввода, и предотвращает ли он переоборудование авторитета, бэкэнд является ключом, что означает, что высказывание «не доверяйте никаким вводам пользователя».
2. большие файлы на каждой странице
Объедините каждую страницу, чтобы сгенерировать большой файл вашего собственного JS, и генерируйте несколько слияний JS.
преимущество:
(1). Каждая страница использует наиболее точный JS, и не будет никакого значения кода.
недостаток:
(1). Есть много страниц, будет сгенерировано несколько JS, что приведет к большому количеству избыточности в общем коде JS.
(2). Общая часть не может быть загружена с помощью оптимизации кэша.
(3). Слияние и использование будут относительно сложными.
Я всегда думаю, что с этим методом что -то не так. Небольшие приложения могут обрабатывать его непосредственно с помощью большого файла, и большие приложения не будут делать этого, и они не могут использоваться в гибридных приложениях. В этом случае, когда размер пакета установки важен, избыточный код не может быть допущен. Когда я думал о различных сценариях, я обнаружил, что его можно решить, используя приведенные выше методы или ниже, и это было лучше, поэтому я думаю, что этот метод бесполезен.
3. Объединение нескольких общих больших файлов
Согласно практике, объединяйте несколько общих больших файлов (например, классификация библиотеки зависимостей), и объединяют необходимые файлы JS (например, бизнес -классификацию), каждая страница относится к одному или нескольким общим большим файлам и файлам JS на этой странице.
преимущество:
(1). Общая часть загружается, и ссылки на каждую страницу как можно более высоки без избыточности.
недостаток:
(1). Будут более или менее определенные страницы, которые будут ссылаться на нежелательный код, а обмен не является полным обменом.
Применимые сценарии:
(1). Как крупные, так и небольшие приложения более подходят. Каждая страница может иметь много общих частей, и разумное слияние файлов будет очень важным.
Суммировать
Этот документ является просто мыслью и является всего лишь общей дискуссией. Существует множество методов слияния файлов, которые динамически генерируются бэкэндом или непосредственно генерируются инструментами (Grunt+requirejs). Приведенные выше три метода слияния также определяются нашими практическими потребностями.
Слияние очень важно, но не рекомендуется объединить все документы. Некоторые документы не могут быть объединены. Некоторые лучше для отдельных документов, но это зависит от конкретного сценария.
Вышеуказанные три способа объединения фронтального файла JS-это все контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.