Я использую шаблон администратора Keenthemes Metronic и испытываю серьезные проблемы с 1 файлом. Это файл javascript, и по какой-то причине, что бы я ни пытался, я не могу его кешировать. Это статический файл размером 3,5 МБ, поэтому его загрузка каждый раз убивает скрипты.
Я пробовал добавлять биты в htaccess и в заголовок, но это ничего не меняет.
Кто нибудь еще сталкивался с этим?
Спасибо
Я бы согласился с вами, но сложность современных скриптов означает, что они больше, но согласитесь, что 3.5 Мб - это смешно !!! Следовательно, я действительно хотел бы, чтобы это было кешировано!
Как это связано с PHP? А вы пытались минимизировать файл?
Основным шаблоном, в котором используется этот скрипт, является PHP, поэтому я добавил тег. Я попытался уменьшить его, и это уменьшило его размер до 2 МБ, но все еще очень большой файл!



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Как я мог видеть из раздела комментариев, вы уже пытались свернуть файл, но он все еще очень большой. Вы можете управлять кешем своего собственного браузера, но не можете управлять кешем браузеров, которые используют ваши пользователи. Поэтому вы не сможете принудительно кэшировать файл. Поэтому вам нужно будет внимательно прочитать файл и разделить его на отдельные файлы. В конечном итоге у вас будет основной файл, который будет полезен везде и который необходимо будет загрузить, и у вас будут некоторые другие файлы, которые относятся к некоторым функциям, например, файл для регистрации / входа в систему, другой для обработки отдельных функций. , например, выбирать цвета и так далее.
Вам нужно будет загрузить свой основной JS-файл везде, но ваши специфические функции потребуются в определенных местах. Вам не понадобятся функции входа в систему, например, если пользователь уже вошел в систему, поэтому вы сможете включать файлы JS для отдельных функций там, где они необходимы, и нигде больше.
Кроме того, вам может потребоваться отложенная загрузка файлов JS, поэтому вы сначала загрузите основной файл, а после его успешной загрузки отдельно загрузите другие файлы. Эти функции будут недоступны изначально при загрузке страницы, поэтому странице необходимо будет каким-то образом обрабатывать или предотвращать попытки пользователей использовать функцию до того, как ее сценарий был загружен.
Также не помешало бы минимизировать все эти отдельные файлы. Возможно, RequireJS может помочь вам справиться с требованиями, но вы также можете реализовать свою собственную функцию для обработки требований.
Хм ... времена изменились, когда я был новичком в HTML и JS, говорили, что "если размер вашего файла сценария превышает 20 КБ, вы сделали что-то не так." Вы очистили кеш, чтобы было достаточно места для хранения файла JS?