指尖上的记忆指尖上的记忆
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub
首页
  • 基础
  • Laravel框架
  • Symfony框架
  • 基础
  • Gin框架
  • 基础
  • Spring框架
  • 命令
  • Nginx
  • Ai
  • Deploy
  • Docker
  • K8s
  • Micro
  • RabbitMQ
  • Mysql
  • PostgreSsql
  • Redis
  • MongoDb
  • Html
  • Js
  • 前端
  • 后端
  • Git
  • 知识扫盲
  • Golang
🌟 gitHub
vue3定义一个指令
// 使用vue3定义一个 dompurify 指令 utils/directives/dompurify-html.ts
import type { App, Plugin } from "vue";
import { buildVueDompurifyHTMLDirective } from "vue-dompurify-html";

export const vDompurifyHtml = buildVueDompurifyHTMLDirective({
  namedConfigurations: {
    removeClasses: {
      FORBID_ATTR: ["class", "className"],
    },
  },
});

export const dompurifyHtmlPlugin: Plugin = {
  install(app: App) {
    app.directive("dompurify-html", vDompurifyHtml);
  },
};


// 在Nuxt3下作为插件引入
export default defineNuxtPlugin((nuxtApp) => {
  nuxtApp.vueApp.directive('dompurify-html', vDompurifyHtml)
})


export default defineNuxtPlugin((nuxtApp) => {
  nuxtApp.vueApp.use(dompurifyHtmlPlugin)
})


//传统应用中
import { createApp } from "vue";
import App from "./App.vue";
import { dompurifyHtmlPlugin } from "./path-to-plugin";

const app = createApp(App);
app.use(dompurifyHtmlPlugin);
app.mount("#app");
```