Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   переподключить js-файл (https://javascript.ru/forum/css-html/28029-perepodklyuchit-js-fajjl.html)

bFree 04.05.2012 14:13

переподключить js-файл
 
Здравствуйте!
Начал заниматься разработкой приложений на JS. Столкнулся с некоторым неудобством: каждый раз при изменении JS-файла приходится в браузере перезагружать страницу полностью, чтобы загузился новый js-файл.

Если приложение работате быстро и запускается сразу же, то это не очень большая проблема.
А если на каждый релоад страницы еще и сервер на php что-то там генерирует, то становится неудобно:
1. Ждать долго
2. Нагрузка на сервер

Хотелось бы спросить совета у бывалых разработчиков: как вы решаете этот вопрос? Каждый раз обновляете страницу после изменений в коде?

dmitriymar 04.05.2012 16:56

Цитата:

Сообщение от bFree
браузере перезагружать страницу полностью, чтобы загузился новый js-файл.

http://javascript.ru/forum/events/21...-skriptov.html

Deff 27.05.2012 03:26

Цитата:

Сообщение от bFree
Начал заниматься разработкой приложений на JS. Столкнулся с некоторым неудобством: каждый раз при изменении JS-файла приходится в браузере перезагружать страницу полностью, чтобы загузился новый js-файл.

Решения обычно Два

1. В имя новосозднного скрипта, средствами PHP включается текущая дата-время создания

2. Добавка к концовке подгружаемого файла PHP скриптом
?1338067182 - текущая дата-время создания

Второй метод иногда приходится синхронизировать с сервисом, если он не поддерживает их в отношении файлов, там дописывают в PHP пару строк

Проверить просто - создать подобное руками приплюсовать
Пример
http://javascript.ru/misc/forum.js?1338067182
Если откроется в Адресном Окне - Вы на коне - нет - к PHP скриптёрам
:yes: Данная - открылась

Kolyaj 27.05.2012 09:51

Deff,
вы про кэширование, а bFree про то, что ему F5 лень нажимать.


Цитата:

Сообщение от bFree
каждый раз при изменении JS-файла приходится в браузере перезагружать страницу полностью, чтобы загузился новый js-файл.

А представляете десктопные программы как писать? Там надо закрыть окно программы, перекомпилировать исходники, запустить заново. Ужас.

Да, каждый раз нужно перезагружать страницу полностью, т.к. ваш JS в том числе что-то делает при загрузке страницы.

Deff 27.05.2012 14:31

Цитата:

Сообщение от Kolyaj
вы про кэширование, а bFree про то, что ему F5 лень нажимать.

:-? Ну если сменится имя, при изменении js или хеш добавки - файл должен же перезагрузится заново ?
Или пусть меняет в тестовом режиме Хеш добавку скриптом +'?'+Math.random() - без перезагрузки страницы


Часовой пояс GMT +3, время: 22:55.