vue-router Build Status

This is vue-router 3.0 which works only with Vue 2.0.

Supporting Vue Router

Vue Router is part of the Vue Ecosystem and is an MIT-licensed open source project with its ongoing development made possible entirely by the support of Sponsors. If you would like to become a sponsor, please consider:

Gold Sponsors

VueJobs

Silver Sponsors

VueMastery Prefect

Bronze Sponsors

Stanislas Ormières Antony Konstantinidis Storyblok NuxtJS


Get started with the documentation, or play with the examples (see how to run them below).

Development Setup

# install deps
yarn

# build dist files
yarn build

# serve examples at localhost:8080
yarn dev

# lint & run all tests
yarn test

# serve docs at localhost:8080
yarn docs

Releasing

  • yarn run release
    • Ensure tests are passing yarn run test
    • Build dist files VERSION=<the_version> yarn run build
    • Build changelog yarn run changelog
    • Commit dist files git add dist CHANGELOG.md && git commit -m "[build $VERSION]"
    • Publish a new version `npm version $VERSION --message "[release] $VERSION"
    • Push tags git push origin refs/tags/v$VERSION && git push
    • Publish to npm npm publish

Questions

For questions and support please use the Discord chat server or the official forum. The issue list of this repo is exclusively for bug reports and feature requests.

Issues

Please make sure to read the Issue Reporting Checklist before opening an issue. Issues not conforming to the guidelines may be closed immediately.

Contribution

Please make sure to read the Contributing Guide before making a pull request.

Changelog

Details changes for each release are documented in the CHANGELOG.md file.

Stay In Touch

  • For latest releases and announcements, follow on Twitter: @vuejs

License

MIT

Copyright (c) 2013-present Evan You

Special Thanks

BrowserStack Logo

Special thanks to BrowserStack for letting the maintainers use their service to debug browser specific issues.

vuejs/vue-router

{
"props": {
"initialPayload": {
"allShortcutsEnabled": false,
"path": "/",
"repo": {
"id": 15116946,
"defaultBranch": "dev",
"name": "vue-router",
"ownerLogin": "vuejs",
"currentUserCanPush": false,
"isFork": false,
"isEmpty": false,
"createdAt": "2013-12-11T19:37:46.000Z",
"ownerAvatar": "https://avatars.githubusercontent.com/u/6128107?v=4",
"public": true,
"private": false,
"isOrgOwned": true
},
"currentUser": null,
"refInfo": {
"name": "dev",
"listCacheKey": "v0:1718692921.0",
"canEdit": false,
"refType": "branch",
"currentOid": "5b67bfd9afed570dc4e9ba1d9c6e711e7c4ea581"
},
"tree": {
"items": [
{
"name": ".circleci",
"path": ".circleci",
"contentType": "directory"
},
{
"name": ".github",
"path": ".github",
"contentType": "directory"
},
{
"name": "assets",
"path": "assets",
"contentType": "directory"
},
{
"name": "build",
"path": "build",
"contentType": "directory"
},
{
"name": "dist",
"path": "dist",
"contentType": "directory"
},
{
"name": "docs-gitbook",
"path": "docs-gitbook",
"contentType": "directory"
},
{
"name": "docs",
"path": "docs",
"contentType": "directory"
},
{
"name": "examples",
"path": "examples",
"contentType": "directory"
},
{
"name": "flow",
"path": "flow",
"contentType": "directory"
},
{
"name": "scripts",
"path": "scripts",
"contentType": "directory"
},
{
"name": "src",
"path": "src",
"contentType": "directory"
},
{
"name": "test",
"path": "test",
"contentType": "directory"
},
{
"name": "types",
"path": "types",
"contentType": "directory"
},
{
"name": "vetur",
"path": "vetur",
"contentType": "directory"
},
{
"name": ".babelrc",
"path": ".babelrc",
"contentType": "file"
},
{
"name": ".eslintignore",
"path": ".eslintignore",
"contentType": "file"
},
{
"name": ".eslintrc",
"path": ".eslintrc",
"contentType": "file"
},
{
"name": ".flowconfig",
"path": ".flowconfig",
"contentType": "file"
},
{
"name": ".gitignore",
"path": ".gitignore",
"contentType": "file"
},
{
"name": ".prettierrc",
"path": ".prettierrc",
"contentType": "file"
},
{
"name": "CHANGELOG.md",
"path": "CHANGELOG.md",
"contentType": "file"
},
{
"name": "LICENSE",
"path": "LICENSE",
"contentType": "file"
},
{
"name": "README.md",
"path": "README.md",
"contentType": "file"
},
{
"name": "composables.d.ts",
"path": "composables.d.ts",
"contentType": "file"
},
{
"name": "composables.js",
"path": "composables.js",
"contentType": "file"
},
{
"name": "composables.mjs",
"path": "composables.mjs",
"contentType": "file"
},
{
"name": "netlify.toml",
"path": "netlify.toml",
"contentType": "file"
},
{
"name": "package.json",
"path": "package.json",
"contentType": "file"
},
{
"name": "yarn.lock",
"path": "yarn.lock",
"contentType": "file"
}
],
"templateDirectorySuggestionUrl": null,
"readme": null,
"totalCount": 29,
"showBranchInfobar": false
},
"fileTree": null,
"fileTreeProcessingTime": null,
"foldersToFetch": [],
"treeExpanded": false,
"symbolsExpanded": false,
"isOverview": true,
"overview": {
"banners": {
"shouldRecommendReadme": false,
"isPersonalRepo": false,
"showUseActionBanner": false,
"actionSlug": null,
"actionId": null,
"showProtectBranchBanner": false,
"publishBannersInfo": {
"dismissActionNoticePath": "/settings/dismiss-notice/publish_action_from_repo",
"releasePath": "/vuejs/vue-router/releases/new?marketplace=true",
"showPublishActionBanner": false
},
"interactionLimitBanner": null,
"showInvitationBanner": false,
"inviterName": null
},
"codeButton": {
"contactPath": "/contact",
"isEnterprise": false,
"local": {
"protocolInfo": {
"httpAvailable": true,
"sshAvailable": null,
"httpUrl": "https://github.com/vuejs/vue-router.git",
"showCloneWarning": null,
"sshUrl": null,
"sshCertificatesRequired": null,
"sshCertificatesAvailable": null,
"ghCliUrl": "gh repo clone vuejs/vue-router",
"defaultProtocol": "http",
"newSshKeyUrl": "/settings/ssh/new",
"setProtocolPath": "/users/set_protocol"
},
"platformInfo": {
"cloneUrl": "https://desktop.github.com",
"showVisualStudioCloneButton": false,
"visualStudioCloneUrl": "https://windows.github.com",
"showXcodeCloneButton": false,
"xcodeCloneUrl": "https://developer.apple.com",
"zipballUrl": "/vuejs/vue-router/archive/refs/heads/dev.zip"
}
},
"newCodespacePath": "/codespaces/new?hide_repo_select=true&repo=15116946"
},
"popovers": {
"rename": null,
"renamedParentRepo": null
},
"commitCount": "1,461",
"overviewFiles": [
{
"displayName": "README.md",
"repoName": "vue-router",
"refName": "dev",
"path": "README.md",
"preferredFileType": "readme",
"tabName": "README",
"richText": "<article class=\"markdown-body entry-content container-lg\" itemprop=\"text\"><div class=\"markdown-heading\" dir=\"auto\"><h1 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">vue-router <a href=\"https://circleci.com/gh/vuejs/vue-router\" rel=\"nofollow\"><img src=\"https://camo.githubusercontent.com/4bbff4759c447a3e0a1088ca63284d93933ca8748c691cc070c64e684ecbaef1/68747470733a2f2f696d672e736869656c64732e696f2f636972636c6563692f70726f6a6563742f6769746875622f7675656a732f7675652d726f757465722f6465762e737667\" alt=\"Build Status\" data-canonical-src=\"https://img.shields.io/circleci/project/github/vuejs/vue-router/dev.svg\" style=\"max-width: 100%;\"></a></h1><a id=\"user-content-vue-router-\" class=\"anchor\" aria-label=\"Permalink: vue-router \" href=\"#vue-router-\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<blockquote>\n<p dir=\"auto\">This is vue-router 3.0 which works only with Vue 2.0.</p>\n<ul dir=\"auto\">\n<li>For the 1.x router see the <a href=\"https://github.com/vuejs/vue-router/tree/1.0\">1.0 branch</a>.</li>\n<li>For Vue Router 4 (for Vue 3) see <a href=\"https://github.com/vuejs/router\">vuejs/router</a>.</li>\n</ul>\n</blockquote>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 align=\"center\" tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Supporting Vue Router</h2><a id=\"user-content-supporting-vue-router\" class=\"anchor\" aria-label=\"Permalink: Supporting Vue Router\" href=\"#supporting-vue-router\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p dir=\"auto\">Vue Router is part of the Vue Ecosystem and is an MIT-licensed open source project with its ongoing development made possible entirely by the support of Sponsors. If you would like to become a sponsor, please consider:</p>\n<ul dir=\"auto\">\n<li><a href=\"https://github.com/sponsors/posva\">Become a Sponsor on GitHub</a></li>\n<li><a href=\"https://paypal.me/posva\" rel=\"nofollow\">One-time donation via PayPal</a></li>\n</ul>\n\n<div class=\"markdown-heading\" dir=\"auto\"><h4 align=\"center\" tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Gold Sponsors</h4><a id=\"user-content-gold-sponsors\" class=\"anchor\" aria-label=\"Permalink: Gold Sponsors\" href=\"#gold-sponsors\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p align=\"center\" dir=\"auto\">\n <a href=\"https://vuejobs.com/?utm_source=vuerouter&amp;utm_campaign=sponsor\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/990171e0bef139d7b2b2f1f8c5c60e56325679a4dc982064f9bd4d222c704638/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656a6f62732e737667\" media=\"(prefers-color-scheme: dark)\" height=\"72px\" alt=\"VueJobs\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuejobs.svg\">\n <img src=\"https://camo.githubusercontent.com/990171e0bef139d7b2b2f1f8c5c60e56325679a4dc982064f9bd4d222c704638/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656a6f62732e737667\" height=\"72px\" alt=\"VueJobs\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuejobs.svg\">\n </picture></themed-picture>\n </a>\n</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h4 align=\"center\" tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Silver Sponsors</h4><a id=\"user-content-silver-sponsors\" class=\"anchor\" aria-label=\"Permalink: Silver Sponsors\" href=\"#silver-sponsors\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p align=\"center\" dir=\"auto\">\n <a href=\"https://www.vuemastery.com/\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/f2caa71a7cf1a6506b652d76c407ef759f1ef63a357041e2e38f191f8e7ffde2/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656d6173746572792d6461726b2e706e67\" media=\"(prefers-color-scheme: dark)\" height=\"42px\" alt=\"VueMastery\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuemastery-dark.png\">\n <img src=\"https://camo.githubusercontent.com/05e181e116f16128e641782616a179efb8c3c45f4f7a051abb8ef0a9a4858eec/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f7675656d6173746572792d6c696768742e737667\" height=\"42px\" alt=\"VueMastery\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/vuemastery-light.svg\">\n </picture></themed-picture>\n </a>\n <a href=\"https://www.prefect.io/\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/b4a2a7f2f9a3f3d64f9ebda2e84d98ac18bf1ecd4cf6f61d0e1f70d64c351ab9/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f707265666563746c6f676f2d6461726b2e737667\" media=\"(prefers-color-scheme: dark)\" height=\"42px\" alt=\"Prefect\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/prefectlogo-dark.svg\">\n <img src=\"https://camo.githubusercontent.com/b935c443105ff7abca317f1abcf084e2a254fb9edfccdd567c6b3259801a0f14/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f707265666563746c6f676f2d6c696768742e737667\" height=\"42px\" alt=\"Prefect\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/prefectlogo-light.svg\">\n </picture></themed-picture>\n </a>\n</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h4 align=\"center\" tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Bronze Sponsors</h4><a id=\"user-content-bronze-sponsors\" class=\"anchor\" aria-label=\"Permalink: Bronze Sponsors\" href=\"#bronze-sponsors\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p align=\"center\" dir=\"auto\">\n <a href=\"https://stormier.ninja\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&amp;v=4\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"Stanislas Ormières\">\n <img src=\"https://avatars.githubusercontent.com/u/2486424?u=7b0c73ae5d090ce53bf59473094e9606fe082c59&amp;v=4\" height=\"26px\" alt=\"Stanislas Ormières\">\n </picture></themed-picture>\n </a>\n <a href=\"/vuejs/vue-router/blob/dev/www.vuejs.de\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&amp;v=4\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"Antony Konstantinidis\">\n <img src=\"https://avatars.githubusercontent.com/u/4183726?u=6b50a8ea16de29d2982f43c5640b1db9299ebcd1&amp;v=4\" height=\"26px\" alt=\"Antony Konstantinidis\">\n </picture></themed-picture>\n </a>\n <a href=\"https://storyblok.com\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/013ee0849c18d0002223e5c4a396535228af093e407f31bd928404eebd63c339/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f73746f7279626c6f6b2e706e67\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"Storyblok\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/storyblok.png\">\n <img src=\"https://camo.githubusercontent.com/013ee0849c18d0002223e5c4a396535228af093e407f31bd928404eebd63c339/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f73746f7279626c6f6b2e706e67\" height=\"26px\" alt=\"Storyblok\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/storyblok.png\">\n </picture></themed-picture>\n </a>\n <a href=\"https://nuxtjs.org\" rel=\"nofollow\">\n <themed-picture data-catalyst-inline=\"true\"><picture>\n <source srcset=\"https://camo.githubusercontent.com/0bc682e85e9a2494e75246e624b21cf2867c4d95bf2fcb83844f24db936cdf1c/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f6e7578742d6461726b2e737667\" media=\"(prefers-color-scheme: dark)\" height=\"26px\" alt=\"NuxtJS\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/nuxt-dark.svg\">\n <img src=\"https://camo.githubusercontent.com/b1e5e1fadba4aba2d059cdf0db45c425fca17578bd97f74bc61cce022479ad2e/68747470733a2f2f706f7376612d73706f6e736f72732e70616765732e6465762f6c6f676f732f6e7578742d6c696768742e737667\" height=\"26px\" alt=\"NuxtJS\" data-canonical-src=\"https://posva-sponsors.pages.dev/logos/nuxt-light.svg\">\n </picture></themed-picture>\n </a>\n</p>\n\n<hr>\n<p dir=\"auto\">Get started with the <a href=\"http://v3.router.vuejs.org\" rel=\"nofollow\">documentation</a>, or play with the <a href=\"https://github.com/vuejs/vue-router/tree/dev/examples\">examples</a> (see how to run them below).</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h3 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Development Setup</h3><a id=\"user-content-development-setup\" class=\"anchor\" aria-label=\"Permalink: Development Setup\" href=\"#development-setup\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<div class=\"highlight highlight-source-shell notranslate position-relative overflow-auto\" dir=\"auto\" data-snippet-clipboard-copy-content=\"# install deps\nyarn\n\n# build dist files\nyarn build\n\n# serve examples at localhost:8080\nyarn dev\n\n# lint &amp; run all tests\nyarn test\n\n# serve docs at localhost:8080\nyarn docs\"><pre><span class=\"pl-c\"><span class=\"pl-c\">#</span> install deps</span>\nyarn\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> build dist files</span>\nyarn build\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> serve examples at localhost:8080</span>\nyarn dev\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> lint &amp; run all tests</span>\nyarn <span class=\"pl-c1\">test</span>\n\n<span class=\"pl-c\"><span class=\"pl-c\">#</span> serve docs at localhost:8080</span>\nyarn docs</pre></div>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Releasing</h2><a id=\"user-content-releasing\" class=\"anchor\" aria-label=\"Permalink: Releasing\" href=\"#releasing\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<ul dir=\"auto\">\n<li><code>yarn run release</code>\n<ul dir=\"auto\">\n<li>Ensure tests are passing <code>yarn run test</code></li>\n<li>Build dist files <code>VERSION=&lt;the_version&gt; yarn run build</code></li>\n<li>Build changelog <code>yarn run changelog</code></li>\n<li>Commit dist files <code>git add dist CHANGELOG.md &amp;&amp; git commit -m \"[build $VERSION]\"</code></li>\n<li>Publish a new version `npm version $VERSION --message \"[release] $VERSION\"</li>\n<li>Push tags <code>git push origin refs/tags/v$VERSION &amp;&amp; git push</code></li>\n<li>Publish to npm <code>npm publish</code></li>\n</ul>\n</li>\n</ul>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Questions</h2><a id=\"user-content-questions\" class=\"anchor\" aria-label=\"Permalink: Questions\" href=\"#questions\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p dir=\"auto\">For questions and support please use the <a href=\"https://chat.vuejs.org\" rel=\"nofollow\">Discord chat server</a> or <a href=\"http://forum.vuejs.org\" rel=\"nofollow\">the official forum</a>. The issue list of this repo is <strong>exclusively</strong> for bug reports and feature requests.</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Issues</h2><a id=\"user-content-issues\" class=\"anchor\" aria-label=\"Permalink: Issues\" href=\"#issues\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p dir=\"auto\">Please make sure to read the <a href=\"https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#issue-reporting-guidelines\">Issue Reporting Checklist</a> before opening an issue. Issues not conforming to the guidelines may be closed immediately.</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Contribution</h2><a id=\"user-content-contribution\" class=\"anchor\" aria-label=\"Permalink: Contribution\" href=\"#contribution\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p dir=\"auto\">Please make sure to read the <a href=\"https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md\">Contributing Guide</a> before making a pull request.</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Changelog</h2><a id=\"user-content-changelog\" class=\"anchor\" aria-label=\"Permalink: Changelog\" href=\"#changelog\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p dir=\"auto\">Details changes for each release are documented in the <a href=\"https://github.com/vuejs/vue-router/blob/dev/CHANGELOG.md\"><code>CHANGELOG.md file</code></a>.</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Stay In Touch</h2><a id=\"user-content-stay-in-touch\" class=\"anchor\" aria-label=\"Permalink: Stay In Touch\" href=\"#stay-in-touch\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<ul dir=\"auto\">\n<li>For latest releases and announcements, follow on Twitter: <a href=\"https://twitter.com/vuejs\" rel=\"nofollow\">@vuejs</a></li>\n</ul>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">License</h2><a id=\"user-content-license\" class=\"anchor\" aria-label=\"Permalink: License\" href=\"#license\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<p dir=\"auto\"><a href=\"http://opensource.org/licenses/MIT\" rel=\"nofollow\">MIT</a></p>\n<p dir=\"auto\">Copyright (c) 2013-present Evan You</p>\n<div class=\"markdown-heading\" dir=\"auto\"><h2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\">Special Thanks</h2><a id=\"user-content-special-thanks\" class=\"anchor\" aria-label=\"Permalink: Special Thanks\" href=\"#special-thanks\"><svg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"><path d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"></path></svg></a></div>\n<a href=\"https://www.browserstack.com\" rel=\"nofollow\">\n <img src=\"/vuejs/vue-router/raw/dev/assets/browserstack-logo-600x315.png\" height=\"80\" title=\"BrowserStack Logo\" alt=\"BrowserStack Logo\" style=\"max-width: 100%;\">\n</a>\n<p dir=\"auto\">Special thanks to <a href=\"https://www.browserstack.com\" rel=\"nofollow\">BrowserStack</a> for letting the maintainers use their service to debug browser specific issues.</p>\n</article>",
"loaded": true,
"timedOut": false,
"errorMessage": null,
"headerInfo": {
"toc": [
{
"level": 1,
"text": "vue-router ",
"anchor": "vue-router-",
"htmlText": "vue-router "
},
{
"level": 2,
"text": "Supporting Vue Router",
"anchor": "supporting-vue-router",
"htmlText": "Supporting Vue Router"
},
{
"level": 4,
"text": "Gold Sponsors",
"anchor": "gold-sponsors",
"htmlText": "Gold Sponsors"
},
{
"level": 4,
"text": "Silver Sponsors",
"anchor": "silver-sponsors",
"htmlText": "Silver Sponsors"
},
{
"level": 4,
"text": "Bronze Sponsors",
"anchor": "bronze-sponsors",
"htmlText": "Bronze Sponsors"
},
{
"level": 3,
"text": "Development Setup",
"anchor": "development-setup",
"htmlText": "Development Setup"
},
{
"level": 2,
"text": "Releasing",
"anchor": "releasing",
"htmlText": "Releasing"
},
{
"level": 2,
"text": "Questions",
"anchor": "questions",
"htmlText": "Questions"
},
{
"level": 2,
"text": "Issues",
"anchor": "issues",
"htmlText": "Issues"
},
{
"level": 2,
"text": "Contribution",
"anchor": "contribution",
"htmlText": "Contribution"
},
{
"level": 2,
"text": "Changelog",
"anchor": "changelog",
"htmlText": "Changelog"
},
{
"level": 2,
"text": "Stay In Touch",
"anchor": "stay-in-touch",
"htmlText": "Stay In Touch"
},
{
"level": 2,
"text": "License",
"anchor": "license",
"htmlText": "License"
},
{
"level": 2,
"text": "Special Thanks",
"anchor": "special-thanks",
"htmlText": "Special Thanks"
}
],
"siteNavLoginPath": "/login?return_to=https%3A%2F%2Fgithub.com%2Fvuejs%2Fvue-router"
}
},
{
"displayName": "LICENSE",
"repoName": "vue-router",
"refName": "dev",
"path": "LICENSE",
"preferredFileType": "license",
"tabName": "MIT",
"richText": null,
"loaded": false,
"timedOut": false,
"errorMessage": null,
"headerInfo": {
"toc": null,
"siteNavLoginPath": "/login?return_to=https%3A%2F%2Fgithub.com%2Fvuejs%2Fvue-router"
}
}
],
"overviewFilesProcessingTime": 0
}
},
"appPayload": {
"helpUrl": "https://docs.github.com",
"findFileWorkerPath": "/assets-cdn/worker/find-file-worker-1583894afd38.js",
"findInFileWorkerPath": "/assets-cdn/worker/find-in-file-worker-3a63a487027b.js",
"githubDevUrl": null,
"enabled_features": {
"code_nav_ui_events": false,
"overview_shared_code_dropdown_button": false,
"react_blob_overlay": false,
"copilot_conversational_ux_embedding_update": false,
"copilot_smell_icebreaker_ux": true,
"copilot_workspace": false
}
}
}
}
{
"accept-ranges": "bytes",
"cache-control": "max-age=0, private, must-revalidate",
"content-encoding": "gzip",
"content-security-policy": "default-src 'none'; base-uri 'self'; child-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com api.githubcopilot.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com/v1/engines/github-completion/completions proxy.enterprise.githubcopilot.com/v1/engines/github-completion/completions *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.com/assets-cdn/worker/ gist.github.com/assets-cdn/worker/",
"content-type": "text/html; charset=utf-8",
"date": "Sat, 27 Jul 2024 06:44:15 GMT",
"etag": "5fbc1b01bdb6cb3fcfc8568a5dec3391",
"referrer-policy": "no-referrer-when-downgrade",
"server": "GitHub.com",
"set-cookie": "logged_in=no; Path=/; Domain=github.com; Expires=Sun, 27 Jul 2025 06:44:15 GMT; HttpOnly; Secure; SameSite=Lax",
"strict-transport-security": "max-age=31536000; includeSubdomains; preload",
"transfer-encoding": "chunked",
"vary": "X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, Accept-Encoding, Accept, X-Requested-With",
"x-content-type-options": "nosniff",
"x-frame-options": "deny",
"x-github-request-id": "8926:1F9D08:2C253A1:3B07CB9:66A4973D",
"x-xss-protection": "0"
}