Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

vue-routing-anchor-parser

Package Overview
Dependencies
Maintainers
2
Versions
30
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vue-routing-anchor-parser

A Vue directive that parses child elements for internally linking anchor tags and binds their click events to use Vue Router's push().

latest
Source
npmnpm
Version
1.15.1
Version published
Weekly downloads
128
Maintainers
2
Weekly downloads
 
Created
Source

vue-routing-anchor-parser

A Vue directive that parses child elements for internally linking anchor tags and binds their click events to use Vue Router's push().

Install

yarn add vue-routing-anchor-parser or npm install --save vue-routing-anchor-parser

Configure

Vue

In a your bootstrapping JS:

parseAnchors = require('vue-routing-anchor-parser')
directive.settings({
  addBlankToExternal: false,
  internalUrls: [
    /^https?:\/\/localhost:\d+/
    /^https?:\/\/([\w\-]+\.)?netlify\.com/
    /^https?:\/\/([\w\-]+\.)?bukwild\.com/
  ]
  internalHosts: [
    'localhost',
    'example.com',
  ]
})
Vue.directive('parse-anchors', parseAnchors)

Nuxt

In nuxt.config.js:

  modules: [
    'vue-routing-anchor-parser/nuxt/module',
  ],
  anchorParser: {
    addBlankToExternal: true,
    internalUrls: [
      /^https?:\/\/localhost:\d+/,
      /^https?:\/\/([\w\-]+\.)?netlify\.com/,
      /^https?:\/\/(www\.)?bukwild\.com/,
    ],
    internalHosts: [
      'localhost',
      'bukwild.com',
    ],
    externalPaths: [
      /^\/react-landing-page/,
    ],
    sameWindowUrls: [
      /^https?:\/\/(shop\.)?bukwild\.com/,
    ],
    disableSmartLinkRegistration: false,
  }

Options

  • addBlankToExternal: Set to true to add target='_blank' to external links
  • internalUrls: Array of regexes that, when found in href attributes, get treated as internal links.
  • internalHosts: Array of host names that, when found in href attributes, get treated as internal links. These are checked after internalUrls.
  • externalPaths: Array of regexes that, when found in href attributes, get treated as external links. Useful for sections of your website that are not part of this Vue/Nuxt app.
  • sameWindowUrls: Array of regexes that are checked when a URL is not internal. If there is a match, the URL opens in the same window rather opening a new window.
  • disableSmartLinkRegistration: Set to true to prevent the auto registration of smart-link

Usage

v-parse-anchors directive

Add v-parse-anchors wherever you want to parse child anchors for internal links and route clicks through Vue Router. hrefs that begin with a slash, like <a href='/path/to/something'> are treated as internal automatically. If an internal route can't be resolved by Vue Router, it falls back to a full page refresh (though never opens in a new window.)

The smart-link component conditionally renders a nuxt-link if an internal link or an a tag if not.

<smart-link to='https://www.bukwild.com'>Bukwild</smart-link>

Notes

  • This currently only parses on bind, meaning if the contents for the element change later, new a tags won't be processed.

Keywords

vue

FAQs

Package last updated on 25 Jun 2022

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