Skip to content

Uncaught Error: URL not found #45

@rix1

Description

@rix1

First off, thanks for creating this! Super exciting project 🙌 Currently migrating a large web app from react-router to navi.

It seems to be an Uncaught Error: URL not found when navigating to a page that doesn't exist. From the docs I believe the error is supposed to be a NotFoundError so that the <NavNotFoundBoundary /> but it just looks like a generic error based on the console output. The strange thing is that the Error boundary catches the error 🤔

navi: 0.10.5
react-navi: 0.10.6
react: 16.6.0

Because the error message is not present on my Express server (using createMemoryNavigation) it leads me to believe the problem might be related to createBrowserNavigation, but I'm uncertain.

The error is also present on the examples on the Navi docs webpage 👇

screenshot 2019-01-10 at 23 25 14


Full stack trace
Errors.js:24

Uncaught Error: URL not found: /asdf/
    at createNotFoundSegment (Segments.js:38)
    at class_1../node_modules/navi/dist/es/Node.js.NodeMatcher.getResult (Node.js:29)
    at class_1../node_modules/navi/dist/es/Switch.js.SwitchMatcher.execute (Switch.js:121)
    at class_1../node_modules/navi/dist/es/Node.js.NodeMatcher.getResult (Node.js:22)
    at RouteObservable.refresh (RouteObservable.js:28)
    at RouteObservable.handleChange (RouteObservable.js:13)
    at RouteObservable../node_modules/navi/dist/es/RouteObservable.js.RouteObservable.subscribe (RouteObservable.js:51)
    at CurrentRouteObservable../node_modules/navi/dist/es/CurrentRouteObservable.js.CurrentRouteObservable.handleURLChange (CurrentRouteObservable.js:186)
    at CurrentRouteObservable../node_modules/navi/dist/es/CurrentRouteObservable.js.CurrentRouteObservable.refresh (CurrentRouteObservable.js:110)
    at new CurrentRouteObservable (CurrentRouteObservable.js:94)
NaviError	@	Errors.js:24
NotFoundError	@	Errors.js:40
createNotFoundSegment	@	Segments.js:38
./node_modules/navi/dist/es/Node.js.NodeMatcher.getResult	@	Node.js:29
./node_modules/navi/dist/es/Switch.js.SwitchMatcher.execute	@	Switch.js:121
./node_modules/navi/dist/es/Node.js.NodeMatcher.getResult	@	Node.js:22
RouteObservable.refresh	@	RouteObservable.js:28
RouteObservable.handleChange	@	RouteObservable.js:13
./node_modules/navi/dist/es/RouteObservable.js.RouteObservable.subscribe	@	RouteObservable.js:51
./node_modules/navi/dist/es/CurrentRouteObservable.js.CurrentRouteObservable.handleURLChange	@	CurrentRouteObservable.js:186
./node_modules/navi/dist/es/CurrentRouteObservable.js.CurrentRouteObservable.refresh	@	CurrentRouteObservable.js:110
CurrentRouteObservable	@	CurrentRouteObservable.js:94
createCurrentRouteObservable	@	CurrentRouteObservable.js:53
BrowserNavigation	@	BrowserNavigation.js:92
createBrowserNavigation	@	BrowserNavigation.js:44
main$	@	index.js:27
tryCatch	@	runtime.js:65
invoke	@	runtime.js:303
prototype.(anonymous function)	@	runtime.js:117
tryCatch	@	runtime.js:65
invoke	@	runtime.js:155
(anonymous)	@	runtime.js:202
callInvokeWithMethodAndArg	@	runtime.js:201
enqueue	@	runtime.js:224
prototype.(anonymous function)	@	runtime.js:117
./node_modules/regenerator-runtime/runtime.js.runtime.async	@	runtime.js:248
main	@	index.js:26
./src/index.js	@	index.js:72
__webpack_require__	@	bootstrap:68
0	@	commons.js:91567
__webpack_require__	@	bootstrap:68
(anonymous)	@	bootstrap:238
(anonymous)	@	bootstrap:238
Promise.then (async)		
invoke	@	runtime.js:164
(anonymous)	@	runtime.js:202
callInvokeWithMethodAndArg	@	runtime.js:201
enqueue	@	runtime.js:224
prototype.(anonymous function)	@	runtime.js:117
./node_modules/regenerator-runtime/runtime.js.runtime.async	@	runtime.js:248
main	@	index.js:26
./src/index.js	@	index.js:72
__webpack_require__	@	bootstrap:68
0	@	commons.js:91567
__webpack_require__	@	bootstrap:68
(anonymous)	@	bootstrap:238
(anonymous)	@	bootstrap:238


react-dom.development.js:15123

The above error occurred in the <InnerNavContent> component:
    in InnerNavContent (created by Context.Consumer)
    in NavContent
    in InnerNotFoundBoundary (created by Context.Consumer)
    in ErrorBoundary (created by Root)
    in NavProvider (created by Root)
    in IntlProvider (created by LanguageProvider)
    in LanguageProvider (created by Root)
    in Provider (created by Root)
    in Root

React will try to recreate this component tree from scratch using the error boundary you provided, InnerNotFoundBoundary.
logCapturedError	@	react-dom.development.js:15123
logError	@	react-dom.development.js:15157
callback	@	react-dom.development.js:15931
callCallback	@	react-dom.development.js:11194
commitUpdateEffects	@	react-dom.development.js:11233
commitUpdateQueue	@	react-dom.development.js:11224
commitLifeCycles	@	react-dom.development.js:15271
commitAllLifeCycles	@	react-dom.development.js:16523
callCallback	@	react-dom.development.js:149
invokeGuardedCallbackDev	@	react-dom.development.js:199
invokeGuardedCallback	@	react-dom.development.js:256
commitRoot	@	react-dom.development.js:16677
completeRoot	@	react-dom.development.js:18069
performWorkOnRoot	@	react-dom.development.js:17997
performWork	@	react-dom.development.js:17901
performSyncWork	@	react-dom.development.js:17873
requestWork	@	react-dom.development.js:17761
scheduleWork	@	react-dom.development.js:17566
scheduleRootUpdate	@	react-dom.development.js:18240
updateContainerAtExpirationTime	@	react-dom.development.js:18267
updateContainer	@	react-dom.development.js:18324
./node_modules/react-dom/cjs/react-dom.development.js.ReactRoot.render	@	react-dom.development.js:18586
(anonymous)	@	react-dom.development.js:18726
unbatchedUpdates	@	react-dom.development.js:18124
legacyRenderSubtreeIntoContainer	@	react-dom.development.js:18722
render	@	react-dom.development.js:18783
main$	@	index.js:64
tryCatch	@	runtime.js:65
invoke	@	runtime.js:303
prototype.(anonymous function)	@	runtime.js:117
tryCatch	@	runtime.js:65
invoke	@	runtime.js:155
(anonymous)	@	runtime.js:165
Promise.then (async)		
invoke	@	runtime.js:164
(anonymous)	@	runtime.js:202
callInvokeWithMethodAndArg	@	runtime.js:201
enqueue	@	runtime.js:224
prototype.(anonymous function)	@	runtime.js:117
./node_modules/regenerator-runtime/runtime.js.runtime.async	@	runtime.js:248
main	@	index.js:26
./src/index.js	@	index.js:72
__webpack_require__	@	bootstrap:68
0	@	commons.js:91567
__webpack_require__	@	bootstrap:68
(anonymous)	@	bootstrap:238
(anonymous)	@	bootstrap:238

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions