Схоже, RequireJS робить щось внутрішнє, що кешує необхідні файли javascript. Якщо я вношу зміни до одного з необхідних файлів, я повинен перейменувати файл, щоб зміни були застосовані.
Загальний трюк додавання номера версії як параметр запиту до кінця імені файлу не працює з Requjs <script src="jsfile.js?v2"></script>
Що я шукаю, це спосіб запобігти це внутрішнє кешування необхідних скриптів RequireJS без необхідності перейменувати мої файли сценаріїв щоразу, коли вони оновлюються.
Міжплатформене рішення:
Зараз я використовую urlArgs: "bust=" + (new Date()).getTime()
для автоматичного перетворення кешу під час розробки та urlArgs: "bust=v2"
для виробництва, де я збільшую номер жорсткої версії версії після розгортання оновленого необхідного сценарію.
Примітка:
@Dustin Getz в нещодавній відповіді згадував, що Інструменти для розробників Chrome опускатимуть точки проходу під час налагодження, коли файли Javascript постійно оновлюються таким чином. Одним із варіантів вирішення проблеми є написання debugger;
коду для запуску точки перелому у більшості налагоджувачів JavaScript.
Рішення для сервера:
Конкретні рішення, які можуть працювати краще для вашого серверного середовища, таких як Node або Apache, див. Деякі відповіді нижче.