[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"github-release-vuejs-router-v5.4.0":3,"$f2v3tzw7dti6zg":-1},{"adjacent":4,"latestReleases":12,"relatedArticles":30,"relatedArticlesAreVersioned":9,"release":31},{"newer":5,"older":6},null,{"htmlUrl":7,"id":8,"isPrerelease":9,"name":10,"publishedAt":11,"tagName":10},"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Freleases\u002Ftag\u002Fv5.3.1","01a062d9-46de-766a-8f6c-e59dcecc9ca2",false,"v5.3.1","2026-09-02T12:37:48.000Z",[13,14,18,22,26],{"id":8,"isPrerelease":9,"name":10,"publishedAt":11,"tagName":10},{"id":15,"isPrerelease":9,"name":16,"publishedAt":17,"tagName":16},"01a043f3-4281-76dd-a3d8-f73c31079b88","v5.3.0","2026-08-27T13:29:26.000Z",{"id":19,"isPrerelease":9,"name":20,"publishedAt":21,"tagName":20},"019f65a5-f053-716d-8e3f-c454992c08b7","v5.2.0","2026-07-15T10:08:20.000Z",{"id":23,"isPrerelease":9,"name":24,"publishedAt":25,"tagName":24},"019e6f50-6fff-7608-9ee2-863746dfddde","v5.1.0","2026-05-28T14:32:51.000Z",{"id":27,"isPrerelease":9,"name":28,"publishedAt":29,"tagName":28},"019e2059-90eb-7579-806a-38c66fa7aab4","v5.0.7","2026-05-13T07:43:32.000Z",[],{"htmlUrl":32,"id":33,"isPrerelease":9,"name":34,"projectId":35,"projectName":36,"projectOwner":37,"projectRepo":38,"projectUrl":39,"publishedAt":40,"summary":41,"tagName":34,"updatedAt":42,"breakingChangesHtml":43,"displayName":44,"hasBreakingChanges":45,"indexable":45,"notesHtml":46,"version":47},"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Freleases\u002Ftag\u002Fv5.4.0","01a11717-da83-773a-bf8a-7310f60a8fbf","v5.4.0","019d7639-b1e3-71ad-8973-02d2bf15c112","Vue Router","vuejs","router","https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter","2026-10-07T15:33:16.000Z","Vue Router v5.4.0 introduces breaking changes by normalizing query values to arrays and adds new features such as accepting prebuilt matchers in `createRouter` and enhanced scroll restoration capabilities. Additionally, there are several bug fixes and performance improvements, particularly around hash and query parameter handling.","2026-10-07T16:00:47.773Z","\u003Cul>\n\u003Cli>\u003Cstrong>experimental\u003C\u002Fstrong>: Normalize query values to arrays &nbsp;-&nbsp; by @posva in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2824\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2824\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Ff1fbc067\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(f1fbc)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Vue Router v5.4.0",true,"\u003Ch3>&nbsp;&nbsp;&nbsp;🚨 Breaking Changes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>experimental\u003C\u002Fstrong>: Normalize query values to arrays &nbsp;-&nbsp; by @posva in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2824\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2824\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Ff1fbc067\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(f1fbc)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>&nbsp;&nbsp;&nbsp;🚀 Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Accept a prebuilt matcher in \u003Ccode>createRouter\u003C\u002Fcode> &nbsp;-&nbsp; by @danielroe in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2804\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2804\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F9de967f4\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(9de96)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>UseScrollRestoration and onRouteRendered &nbsp;-&nbsp; by @posva in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2805\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2805\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fe3dde5eb\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(e3dde)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Diagnose experimental beforeEnter migration &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fb695cd0f\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(b695c)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>experimental\u003C\u002Fstrong>:\u003Cul>\n\u003Cli>Warn about legacy optional param removal &nbsp;-&nbsp; by @posva in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2818\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2818\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fc2f92a4d\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(c2f92)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Extract hash params with definePage &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fdbf2d9e2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(dbf2d)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Configure required and default hash params &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fcef5cfae\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(cef5c)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Never decode the hash, protect-only encoding &nbsp;-&nbsp; by @posva in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2760\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2760\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Faca2c83a\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(aca2c)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Allow custom regexp for path params in definePage &nbsp;-&nbsp; by @posva in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2822\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2822\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F3a192ad1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(3a192)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>router\u003C\u002Fstrong>:\u003Cul>\n\u003Cli>Restore hashes and top by default &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F7c3851f8\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(7c385)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>&nbsp;&nbsp;&nbsp;🐞 Bug Fixes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Resolve experimental guard redirects against target on history navigation &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F2c5fbd63\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(2c5fb)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>experimental\u003C\u002Fstrong>:\u003Cul>\n\u003Cli>Keep declared case of static prefix in MatcherPatternPathStar.build() &nbsp;-&nbsp; by @contactjawad in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2798\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2798\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F4dc6bfa1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(4dc6b)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Make hash params optional and nullable &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fd9a4ceb0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(d9a4c)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Exclude defaults from required hash params &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F346e2cde\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(346e2)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Align hash parameter parsing with queries &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fcf25179f\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(cf251)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Keep last hash param instead of throwing &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Fd1e8ac17\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(d1e8a)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Disallow required with a default for query params &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Ff60e9e37\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(f60e9)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Make query params with a default optional on push &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002Ffb604ea6\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(fb604)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Do not inherit params, query, or hash on redirects &nbsp;-&nbsp; by @posva \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F02a92656\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(02a92)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>history\u003C\u002Fstrong>:\u003Cul>\n\u003Cli>Invalidate obsolete scroll positions &nbsp;-&nbsp; by @posva and @liuly0322 in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2814\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2814\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F071f1969\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(071f1)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>unplugin\u003C\u002Fstrong>:\u003Cul>\n\u003Cli>Sanitize named view in definePage import &nbsp;-&nbsp; by @giaBaoJS in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2809\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2809\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F0711dff9\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(0711d)\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Keep hex character codes in param segments regexp &nbsp;-&nbsp; by @kwy404 in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2811\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2811\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F07663eb6\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(07663)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>&nbsp;&nbsp;&nbsp;🏎 Performance\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>unplugin\u003C\u002Fstrong>: Cache merged route overrides &nbsp;-&nbsp; by @posva in \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2821\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fissues\u002F2821\u003C\u002Fa> \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcommit\u002F732b723e\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">(732b7)\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch5>&nbsp;&nbsp;&nbsp;&nbsp;\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvuejs\u002Frouter\u002Fcompare\u002Fv5.3.1...v5.4.0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">View changes on GitHub\u003C\u002Fa>\u003C\u002Fh5>\n","5.4.0"]