You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

vue-router

Package Overview
Dependencies
Maintainers
2
Versions
182
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vue-router

Official router for Vue.js 2


Version published
Weekly downloads
2.3M
decreased by-21.15%
Maintainers
2
Install size
473 kB
Created
Weekly downloads
 

Package description

What is vue-router?

The vue-router npm package is the official router for Vue.js. It integrates closely with Vue.js core to make building Single Page Applications with Vue.js a breeze. Features include nested routes/mappings, modular, component-based router configuration, route params, query, wildcards, transitions, fine-grained navigation control, and view transition effects powered by Vue.js' transition system.

What are vue-router's main functionalities?

Dynamic Route Matching

This feature allows you to create routes that are dynamically matched to the path. For example, different user IDs can be matched to the same route pattern.

{"const router = new VueRouter({
  routes: [
    { path: '/user/:id', component: User }
  ]
})
const User = {
  template: '<div>User {{ $route.params.id }}</div>'
}"}

Nested Routes

This feature allows you to map nested paths to components. It's useful for creating sub-sections of a page without having to create complex configurations.

{"const router = new VueRouter({
  routes: [
    { path: '/user/:id', component: User,
      children: [
        {
          // UserProfile will be rendered inside User's <router-view>
          path: 'profile',
          component: UserProfile
        }
      ]
    }
  ]
})
const User = {
  template: '<div>User <router-view></router-view></div>'
}"}

Programmatic Navigation

Vue-router allows you to navigate without using <router-link> by using the router instance methods.

{"router.push('/home')
router.replace('/home')
router.go(-1)"}

Named Routes

Instead of using URLs, you can navigate using route names, making your code more readable and maintainable.

{"const router = new VueRouter({
  routes: [
    { name: 'user', path: '/user/:id', component: User }
  ]
})
// navigate to a named route
router.push({ name: 'user', params: { id: 123 }})"}

Route Guards

Route guards are used to protect routes that require authentication, perform checks before entering a route, or confirm navigation away from a route.

{"const router = new VueRouter({
  routes: [
    { path: '/secret', component: Secret, beforeEnter: (to, from, next) => {
      // ... guard logic
      next();
    }}
  ]
})"}

Other packages similar to vue-router

Readme

Source

vue-router Build Status

This is vue-router 3.0 which works only with Vue 2.0. For the 1.x router see the 1.0 branch.

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:

Platinum Sponsors

Finogeeks

Gold Sponsors

Passionate People Vuetify VueJobs

Silver Sponsors

Vue Mastery Bird Eats bug

Bronze Sponsors

Storyblok NuxtJS


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

Development Setup

# install deps
npm install

# build dist files
npm run build

# serve examples at localhost:8080
npm run dev

# lint & run all tests
npm test

# serve docs at localhost:8080
npm run 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.

Keywords

FAQs

Package last updated on 26 Oct 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc