AK
goto('details')`, создал отдельный путь в `routes
`, но каждый раз при выходе из details
(goto('.'))
происходит перезагрузка страницыSize: a a a
AK
goto('details')`, создал отдельный путь в `routes
`, но каждый раз при выходе из details
(goto('.'))
происходит перезагрузка страницыAK
SG
AK
goto('.')
- на мой взгляд инициализирует перезагрузку. Я начал делать через history.pushState({}, '', 'details')
- и происходит так, как я хочу, но хотелось бы сделать инструментами фреймворкаSG
goto('.')
- на мой взгляд инициализирует перезагрузку. Я начал делать через history.pushState({}, '', 'details')
- и происходит так, как я хочу, но хотелось бы сделать инструментами фреймворкаAK
/
скорее всего не проканает, т.к. у меня есть baseUrl
в саппере. С details работает нормально, когда мы идём вперёд, как только мы уходим с details
назад, то показывается лоадер и загружается кореньAK
details
рендерится не на всю высоту (по дизайну), и на фоне должен быть контент корня. При goto('details')
на фоне белая страницаAK
history.pushState({}, '', 'details')
, а при закрытии окна с деталями - history.pushState({}, null, '.')
. Думал что всё огонь, но теперь при нажатии "Назад" в браузере урл меняется, но окно с деталями остаётся открытымSG
/
скорее всего не проканает, т.к. у меня есть baseUrl
в саппере. С details работает нормально, когда мы идём вперёд, как только мы уходим с details
назад, то показывается лоадер и загружается кореньSG
AK
AK
routes
будет файл [detailsId].svelte
, в которую будут уходить параметры с урла. Я правильно понял?SG
SG
AK
AP
AK
<svelte:window on:popstate={handleOnPopstate} />
, и уже в handleOnPopstate
закрываю окно с деталями средствами свелта. Похоже, что это самый оптимальный вариантAM
AS
AM
const {build} = require(`esbuild`);
const sveltePlugin = require(`esbuild-svelte`);
// Берем содержимое package.json в виде объекта pkg
const pkg = require(`./package.json`);
// Настраиваем плагин компиляции Svelte файлов
const svelte = sveltePlugin({
compileOptions:{
// Все стили будут упакованы вместе с компонентом
css: true
}
});
// Собираем IIFE-модуль
build({
// Откуда и куда собирать модули узнаем в package.json
entryPoints: [pkg.svelte],
outfile: pkg.cdn,
format: 'iife',
bundle: true,
minify: true,
sourcemap: true,
plugins: [svelte],
// Задаём имя глобальной переменной для доступа к модулю
globalName: 'bookingWidget',
})
// Собираем ES-модуль
build({
entryPoints: [pkg.svelte],
outfile: pkg.module,
format: 'esm',
bundle: true,
minify: true,
sourcemap: true,
plugins: [svelte],
// Просим не включать в модуль зависимости из разделов
// dependencies и peerDependencies в файле package.json
external: [
...Object.keys(pkg.dependencies),
...Object.keys(pkg.peerDependencies),
]
})