1296 infinite loading when visiting non existent application - #1985
Conversation
6a1d0f9 to
b1d3ac7
Compare
enjeck
left a comment
There was a problem hiding this comment.
Thanks! The failing component tests CI can be ignored. But will need to sign the commit message. In case you don't know how, https://github.com/nextcloud/server/wiki/How-to-sign-your-commits-using-PGP
b1d3ac7 to
8fca814
Compare
done, thank you! |
4a34315 to
d3537d7
Compare
d3537d7 to
8f65809
Compare
enjeck
left a comment
There was a problem hiding this comment.
Thanks! I tested and it mostly works. Only problem is the browser console errors after visiting non-existent resources.
For applicatiions:
TypeError: Cannot read properties of undefined (reading 'name')
at VueComponent.routing (main.js:22:2)
at VueComponent.$route (main.js:22:2)
at invokeWithErrorHandling (vue.runtime.esm.js:3033:30)
at Watcher2.run (vue.runtime.esm.js:3550:21)
at flushSchedulerQueue (vue.runtime.esm.js:4141:17)
at Array.<anonymous> (vue.runtime.esm.js:3159:20)
at flushCallbacks (vue.runtime.esm.js:3081:17)
logError @ vue.runtime.esm.js:3065
For views:
TypeError: Cannot read properties of undefined (reading 'title')
at VueComponent.routing (main.js:22:2)
at VueComponent.created (main.js:22:2)
This happens because we're trying to set the page title as seen in https://github.com/nextcloud/tables/blob/main/src/App.vue#L99 and https://github.com/nextcloud/tables/blob/main/src/App.vue#L108 but these do not exist
0b35997 to
de25806
Compare
Thanks for pointing out the code lines! I have added default titles for those missing ressources. Do you think that makes sense? |
I was thinking we would say something like "View/table/context not found". Since the title/name is a mandatory field and views/tables/contexts would always have them, if they exist. But I guess what you have is safer in case |
40fd2b2 to
4f73190
Compare
4f73190 to
c2104d5
Compare
enjeck
left a comment
There was a problem hiding this comment.
Was testing again and I noticed that when we're on the "error" page, the + buttons against "Tables" and "Applications" that let us create a new Table or Application do not work.
Issue might stem from https://github.com/nextcloud/tables/blob/main/src/modules/navigation/sections/Navigation.vue#L202, where we emit the events 🤔
c2104d5 to
8783786
Compare
Okay I probably have fixed that by always rendering MainModals in Table and View for the Navigation to work correctly. What do you think? |
enjeck
left a comment
There was a problem hiding this comment.
Hmm, the behavior for the non-exisitng application changed? I no longer see an "error page". It just redirects to the homepage. Is that intentional? 🤔
b9c4872 to
6b80807
Compare
This still happens for me :| |
8b97266 to
11b37c5
Compare
enjeck
left a comment
There was a problem hiding this comment.
When I'm on a table and I delete it, the previous behavior was to redirect to the homepage (which is good). Now, we are stuck on an infinite loading screen.
Views and Apps, however, work fine
11b37c5 to
76cb20b
Compare
enjeck
left a comment
There was a problem hiding this comment.
Thanks. I tested and now works. Just a few comments:
76cb20b to
1c438f6
Compare
Signed-off-by: Silver <s.szmajduch@posteo.de>
Signed-off-by: Silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
… btns Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
Signed-off-by: silver <s.szmajduch@posteo.de>
1c438f6 to
e9d736a
Compare
This PR improves error handling when navigating to non-existent tables, views, or contexts in the Tables app.
Previously, accessing a non-existent resource (e.g. /view/999 or /context/999) would result in an unhandled exception (TypeError: undefined) and show only a loading spinner. This was confusing to users and cluttered the console with errors.
Changes