Я используя require.js и r.js для упаковки моих модулей AMD. Я использую jquery и requirejs с помощью следующего синтаксиса:
<script data-main="/js/client" src="/js/external/require-jquery.js"></script>
Все это отлично работает до и после упаковки, но я часто сталкиваюсь с проблемами, когда chrome и mobile safari удерживают кэшированную версию client.js. Я хотел бы добавить кэшбастер в client.js, но я не могу понять, как это сделать, используя приведенный выше синтаксис.
Я попробовал несколько вариантов:
<script data-main="js/client.js?b=busted" src="/js/external/require-jquery.js"></script>
но теперь require пытается получить client.js из /
, а не из /js
, так что это 404s.
Я также пытался добавить
urlArgs : "bust="+new Date().getTime()
в require.config
, но, похоже, это не дало никакого эффекта.
Я также пытался добавить то же значение в app.build.js
, но когда оно там, r.js больше не объединяет мои файлы js, а просто искажает их.
Каков правильный синтаксис для очистки кеша скрипта require.js data-main?