Skip to content

include url for default routes within match#90

Open
alexanderknapstein wants to merge 20 commits intostencil-community:masterfrom
INSPIRATIONlabs:master
Open

include url for default routes within match#90
alexanderknapstein wants to merge 20 commits intostencil-community:masterfrom
INSPIRATIONlabs:master

Conversation

@alexanderknapstein
Copy link
Copy Markdown

@alexanderknapstein alexanderknapstein commented Feb 26, 2019

Dear @jthoms1 ,

we make heavily use of the route-switch but not only for not-found-pages, but for dynamic loaded content without assigning every route to a specific component. So in our case it would be helfpul to include the current "match" within the match object.

example:

<stencil-router>
    <stencil-route-switch>
        <stencil-route url='/home' component='il-home' title='home'></stencil-route>
        <stencil-route component='site-loader' title='site'></stencil-route>
    </stencil-route-switch>
</stencil-router>

the match result (@prop() match: MatchResults;) for all default routes (e.g. /some/url) looks like this:

{path: "/", url: "/", isExact: true, params: {…}}

which is not helpful in a fallback case to load any dynamic data. With my suggestion the match result will contain the current url, which can be consumed within the route component:

{path: "/some/url", url: "/some/url", isExact: true, params: {…}}

Would be cool, if you could merge that.
Thanx /Alex

@alexanderknapstein
Copy link
Copy Markdown
Author

Any chance of merging this?

@DominicBoettger
Copy link
Copy Markdown

until merge it's available as @inspirationlabs/router

@bitflower
Copy link
Copy Markdown
Contributor

Can you elaborate a bit more on the use case? Does it deal with nested / child routes requiring to be setup with full absolute paths? I have the use case that I dynamically build nested child routes and would love the created children to „inherit“ their route from the parent.

@DominicBoettger
Copy link
Copy Markdown

added compat to stencil one

@DominicBoettger
Copy link
Copy Markdown

@bitflower It's not adding such a feature. It makes it just easier to get the current match when using pages which are from top to bottom dynamic. In our case they are driven by a CMS backend and there is no real routing logic except a default match rule in stencil and we validate against the backend as soon as the current route changes and load the data from the backend.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants