Comments (3)
I can't reproduce it in the examples given, but it's definitely causing weird artifacts in my app. Like redundantly duplicating basePath "/frontend/frontend/...", and subsequently redirecting to it which obviously results in 404. I can't yet figure out why or where this is happening, or whether its my own app or this library...
But I've found a workaround that seems to avoid the issue of unnecessary redirection and path changes.
By patching next/router
:
import Router from 'next/router'
import { createRouterMiddleware, ConnectedRouter } from 'connected-next-router';
/* Make `Router.asPath` return with `basePath` prefixed (if absent) */
const patchedRouter = new Proxy(Router, {
get: (Router, key, receiver) => {
if (key === 'asPath') {
const { basePath, asPath } = Router
const replaced = asPath.includes(basePath) ? asPath : basePath + asPath
return replaced
} else {
return Reflect.get(Router, key, receiver)
}
}
})
createRouterMiddleware({ Router: patchedRouter })
<ConnectedRouter Router={patchedRouter}/>
from connected-next-router.
Hi @laggingreflex, I'm currently sick and can't investigate the issue at the moment. I should be able to next week.
from connected-next-router.
I'm also seeing this behavior, but only when using query parameters. Otherwise great work!
from connected-next-router.
Related Issues (20)
- Why not just use Router.push? HOT 1
- Integration in Saga HOT 8
- Doesn't support NextJS 9.0.5 HOT 1
- Example without `next-redux-wrapper` HOT 6
- Requests with query parameters are being redirected to / HOT 4
- Option to change action types names HOT 1
- State updates after the first useEffect(() => {}, []) called. HOT 3
- Feature request: createMatchSelector to replace connected-react-router HOT 8
- my push method from next/router not working properly as expected after wrapping my app with ConnectedRouter HOT 12
- [Question] How to get URL parts in a Reducer? HOT 4
- react-router migration question HOT 2
- search.replace is not a function HOT 3
- Redux-undo?
- Redux Toolkit HOT 3
- Export a NextRouterState type for TypeScript?
- Expose a LocationChangeAction type for TypeScript? HOT 3
- doesn't work with React 18+ HOT 3
- Redux Persist
- peer dependency issue with react-redux@8 HOT 1
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 connected-next-router.