Vue directive for HTML sanitization.
npm install vue-sanitize-directiveVue's default v-text is HTML-insensitive, while v-html doesn't perform sanitization by default.
v-sanitize is a Vue directive for HTML sanitization, powered by the flexible sanitize-html. The directive can receive either a string, that will undergo a partial sanitization if no modifier is present, or an array of two elements, the first being a sanitize-html allowlist (know more here) and the second being the string to be sanitized.
``html`
The validation and sanitization of user-provided input should be performed on the back-end, before storing it on the database. You should resort to client-side input sanitization only if you don't control the back-end, e.g., consuming content from an external API.
Start getting it with NPM or Yarn (see package).
`bash`
npm install vue-sanitize-directive
Then install it like any other Vue plugin. This will provide the v-sanitize directive globally.
`js
import VueSanitize from 'vue-sanitize-directive'
// Vue 2.x
Vue.use(VueSanitize)
// Vue 3.x
app.use(VueSanitize)
`
Removes all HTML tags, keeping just the text content.
`html`
Allows some HTML tags, but remove unsafe content, like and tags.
`html`
=
Removes most tags, keeping only inline formatting and tags.
`html`
Allows all HTML tags, not performing sanitization. For all effects, it's a replacement for v-html.
`html``