Comments (7)
(follow this issue for the 404 status)
from isomorphic500.
For the 404 status:
import { find } from 'lodash';
const isNotFound = !!find(state.routes, { 'name': 'not-found' });
res.status(isNotFound ? 404 : 200).send(/* etc */);
from isomorphic500.
You don't need lodash :-p
let isNotFound = state.routes.some(route => route.name == 'not-found')
from isomorphic500.
Hi @gpbl,
I'm struggling with a similar situation as you described in remix-run/react-router#458 (comment)
I have a condition in ParentComponent#render() which renders NotFound component if resource hasn't been found.
In this case I can't spot it this way
Router.run(routes, req.url, (Handler, state) => {
const html = React.renderToString //.....
const isNotFound = _.find(state.routes, { 'name': 'not-found' });
res.status(isNotFound ? 404 : 200).send(html);
because in state.routes I still have the route of ParentComponent and not 'not-found'.
Please suggest how to do that if you have figured it out. Thanks.
from isomorphic500.
I'm closing this because it becomes obsolete with the recent 'isomorphic500' release, based on flux. At the end I switched to the fluxible's router: it made easier to manage the error pages – mainly because it keeps all inside a "flux" flow.
@Snegostoop did you find a solution with the suggestions you got in the react-router comments?
from isomorphic500.
Up to this moment no, but I elaborated the question as much as I could so I hope we'll at least find out if it's even possible.
I'm also developing my app using flux, but I use another isomorphic-friendly library - flummox. Thanks for your suggestion of fluxible, I'll consider moving to it if this issue with react-router will not resolve.
from isomorphic500.
@Snegostoop I understand better now – you are in the case where a NotFound route may come from a 404 API response (e.g. /user/:id when id
is a not existing user). In a flux application having a RouteStore, the idea (proposed by the fluxible team) is to execute an action that tell the store to display a 404 page. Honestly I don't know how this could work in a Router.run
callback.
from isomorphic500.
Related Issues (20)
- Can't require images with webpack on the backend HOT 4
- Is it possible to set up an absolute path for import in css and js? HOT 6
- Error Cannot use [chunkhash] on "npm run dev" HOT 1
- Google Analytics route change handling mistake HOT 2
- Service set up with onSave reload HOT 1
- Troubles using <FormattedMessage... > HOT 3
- "Page not found" hardcoded in NotFoundPage HOT 4
- TypeError: Cannot read property 'map' of undefined HOT 5
- Can't run "17 error [email protected] dev: `NODE_ENV=development DEBUG=isomorphic500 nodemon index.js`" HOT 1
- webpack/write-stats.js HOT 3
- Routing help to new page on click HOT 3
- You may remove NoErrorsPlugin with React Hot Loader 1.3.0 HOT 1
- What is benefits of using fluxible? HOT 7
- importing imagesLoaded and other modules that required browser environment HOT 2
- react-intl server rendering and the markup generated on the server was not what the client was expecting
- SEO multi Language perspective HOT 4
- How to load specific locales like es-MX or en-GB HOT 2
- Locale Urls
- Running the development version using Node 4
- Npm install -- Throws be python error 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 isomorphic500.