Есть ли способ, используя sw-precache
, кэшировать URL, на котором вы сейчас находитесь, без точного указания строки URL в dynamicUrlToDependencies
?Моя страница кэшируется, когда я указываю конкретный относительный URL /dynamic/url-circle
, но не если я задаю только /
.Я предполагаю, что это происходит потому, что мой URL-адрес http://localhost:3000/dynamic/url-circle,, а не просто http://localhost:3000/. Мне нужно, чтобы это работало для любой строки URL-адреса, поскольку я не знаю точный URL-адрес после dynamic/
(например,/dynamic/url-triangle
, /dynamic/url-square
).Есть ли какие-либо абстракции или строковые шаблоны, которые можно использовать для dynamicUrlToDependencies
?Или есть другое решение, которое я могу использовать?
ex:
dynamicUrlToDependencies: {
'/dynamic/url-circle': [ 'public/dist/css/dynamic.css', 'public/dist/js/dynamic.js' ],
'/': [ 'public/dist/css/dynamic.css', 'public/dist/js/dynamic.js' ],
},
Вот мои настройки sw-precache
в моем Gruntfile:
const rootDir = 'public'
const config = {
cacheId: version,
handleFetch: true,
logger: grunt.log.writeln,
staticFileGlobs: [
`${rootDir}/dist/js/*.{css,js}`,
`${rootDir}/dist/css/*.{css,js}`,
`${rootDir}/dist/offline.html`,
],
dynamicUrlToDependencies: {
'/dynamic/url-circle': [ 'public/dist/css/dynamic.css', 'public/dist/js/dynamic.js' ],
'/': [ 'public/dist/css/dynamic.css', 'public/dist/js/dynamic.js' ],
},
stripPrefix: `${rootDir}/`,
directoryIndex: 'dist/offline.html',
navigateFallback: 'dist/offline.html',
verbose: true,
maximumFileSizeToCacheInBytes: 15 * 1024 * 1024, // 15MB
};