Comments (3)
You can totally do /books*
but that would lead to unexpected consequences, such as matching /booksmart
too. Hence the recommendation to use both /books
and /books/*
, which comes from https://github.com/lukeed/regexparam (the library used to parse the strings)
Having to define the route twice is an annoyance, but it should be a relatively minor one...
If you absolutely needed to define the route only once, you should look into defining it using a custom regular expression, which however requires using maps rather than objects with this router. With your example:
const routes = new Map()
routes.set(/^\/books(\/(.*))?/i, Books)
This matches both /books
(but not /booksmart
) and /books/*
from svelte-spa-router.
See here for nesting: https://github.com/ItalyPaleAle/svelte-spa-router/blob/master/Advanced%20Usage.md#nested-routers
from svelte-spa-router.
@ItalyPaleAle I have read all about that.
The issue (exposed not very clearly, I admit) is this:
If I need to handle an URL like: mydomain.com/#/books
(without final slash /
) I need two routes like this:
routes = {
'/books': Books,
'/books/*': Books,
}
Is there a way to handle both #/books
and #/books/*
with just one route?
Is it clear now?
from svelte-spa-router.
Related Issues (20)
- Nested routes as maps HOT 1
- If I want to go to the login page in the sidebar + SPA form, is it possible with route guard? HOT 4
- Is this not possible in routeLoaded? HOT 5
- What is the black bar in this image? HOT 2
- Feature request: Svelte 4 support HOT 13
- FEATURE REQUEST: pass next() in precondition to decide whether the router should *change* the current route HOT 1
- Load user data HOT 4
- How to check hash-bashed history HOT 1
- Is there an alternative to the "Failed to fetch dynamically import problem" issue in Vite + Svelte spa environment? HOT 1
- WARNING: The following packages have a svelte field in their package.json but no exports condition for svelte. [email protected] HOT 8
- Typescript problematic types after "wrapping" the route HOT 2
- navigating within same component does not work HOT 5
- Typescript support: Package path ./wrap is not exported from package svelte-spa-router HOT 2
- Will the library support Svelte 5? HOT 6
- Authentication and Authorization HOT 6
- Layouts not exists for svelte-spa-router? HOT 6
- Feature request: Nested route priority HOT 1
- children router bug HOT 2
- <Pages> was created with unknown prop 'params' HOT 4
- Typescript complaining about `Type 'WrappedComponent' is not assignable to type 'typeof SvelteComponent<any>'.ts(2322)` HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from svelte-spa-router.