Vue linkify

A simple Vue directive to turn URL's and emails into clickable links

Version: 1.0.1 Updated: 12/15/2016

By: phanan License: MIT

Downloads Last 30 Days: 6.1k

Install

npm i vue-linkify
yarn add vue-linkify

CDNs

bundle.run: https://bundle.run/vue-linkify

jsDelivr: https://cdn.jsdelivr.net/npm/vue-linkify

unpkg: https://unpkg.com/vue-linkify

vue-linkify

A simple Vue directive to turn URL's and emails into clickable links. Based on SoapBox's Linkify.

Install

This directive can be installed as a module:

$ npm install vue-linkify

or, if you're not in a module environment, just include it as a <script>.

Basic Usage

In a browser environment, you should now have a v-linkified directive set up for free. If you're in a module environment, just import and register it as you please:

import linkify from 'vue-linkify'

Vue.directive('linkified', linkify)

And then you use it away:

<template>
  <div id="app">
    <div v-html="raw" v-linkified />
  </div>
</template>
<script>
export default {
  data () {
    return {
      raw: 'Hello from vuejs.org'
    }
  }
}
</script>

The above snippet will yield:

Hello from <a href="http://vuejs.org" class="linkified" target="_blank">vuejs.org</a>

Advanced Slightly Less Basic Usage

You can also pass an options argument, which takes an Object, into the directive to control its behavior. For example, modifying the above template into something like this:

<template>
  <div id="app">
    <div v-html="raw" v-linkified:options="{ className: 'foo' }" />
  </div>
</template>

will yield a slightly different HTML:

Hello from <a href="http://vuejs.org" class="foo" target="_blank">vuejs.org</a>

A list of available options is available here.

License

MIT © Phan An

Categories: Vue js