diff --git a/packages/app-shell/src/router.js b/packages/app-shell/src/router.js
index 2ee466094ed5d6e7531e11ecd9ea7b9c354feb26..8f90830a771b91d0ea8abc525bd13b43fe82c4a1 100644
--- a/packages/app-shell/src/router.js
+++ b/packages/app-shell/src/router.js
@@ -102,6 +102,12 @@ export class Router {
         if (partialState === undefined)
             partialState = {};
         let combined = {...currentState, ...partialState};
+
+        // prevent: Uncaught TypeError: Expected "component" to match "[^\/#\?]+?", but got ""
+        if (combined.component === '') {
+            combined.component = 'root';
+        }
+
         return generateUrls(this.router)(this.routeName, combined);
     }