当前位置: 首页 > news >正文

前端基础之《Vue(12)—插件封装》

一、插件封装

1、在Vue生态中,除了Vue本身,其它所有的与Vue相关的第三方包,都是插件
例子:

import VueRouter form 'vue-router'
Vue.use(VueRouter) // 注册插件

2、如何封装Vue插件
(1)第一种写法
const Plugin = { install (Vue) { //do something} }
(2)第二种写法
const Plugin = function (Vue) {}

3、如何使用插件
Vue.use(Plugin)
调用插件上的install方法,并传入Vue实参。

4、插件的作用
插件是一种更加高级的代码复用技术,可以以插件的方式为我们提供可复用的组件、混入、指令、过滤器、原型链API等等。

二、例子代码

<html>
<head><title>插件封装</title><style></style>
</head>
<body><div id="app"><my-button></my-button><h1>{{ "99.1" | rmb }}</h1><h1 v-color='"red"'>测试</h1></div><script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script><script>const MyPlugin = {install: function(Vue) {// 插件中可以全局混入Vue.mixin({data() {return {version: 'v2'}}})// 插件中可以定义全局组件Vue.component('my-button', {template: `<div>我的按钮</div>`})// 插件中可以定义全局过滤器Vue.filter('rmb', val=>('¥'+val))// 插件中可以定义全局指令Vue.directive('color', function(el,binding){el.style.color = binding.value})// 插件中可以操作Vue的原型链Vue.prototype.$ajax = function(url,method,data) {console.log('---调接口')}}}Vue.use(MyPlugin)const app = new Vue({mounted() {console.log('---version', this.version)console.log('---$ajax', this.$ajax)}})app.$mount('#app')</script></body>
</html>

http://www.xdnf.cn/news/138619.html

相关文章:

  • Instagram广告账号被封禁停用该怎么办?
  • python——面向对象编程
  • HTMLCSS模板实现水滴动画效果
  • 通讯的基础概念:涵盖串行通信、并行通信、TCP、UDP、Socket 等关键概念和技术
  • VRRP与防火墙双机热备实验
  • HW蓝队开源网络流量分析工具 -- TrafficEye
  • 计组1.3——计算机的性能指标
  • Axure疑难杂症:详解设置选中与选中效果(玩转选中)
  • Codeforces Round 1020 (Div. 3)(题解ABCDEF)
  • deep鼠标跟随插件
  • 北斗导航 | 北斗卫星导航单点定位与深度学习结合提升精度
  • 软考【网络工程师】2023年11月上午题答案解析
  • 数据库MySQL学习——day4(更多查询操作与更新数据)
  • 如何设置极狐GitLab 议题截止日?
  • 开源项目实战学习之YOLO11:ultralytics-cfg-datasets-Objects365、open-images-v7.yaml文件(六)
  • ADW600模块:40%体积缩减+多回路智能计量,工业节能的“隐形管家”
  • Docker安装(Ubuntu22版)
  • 【计算机视觉】CV实践- 基于PaddleSeg的遥感建筑变化检测全解析:从U-Net 3+原理到工程实践
  • 什么是 MCP?与 AI Agent 的关系是什么?
  • 14.ArkUI Radio的介绍和使用
  • 实验4:列表与字典应用
  • 机器视觉的胶带模切应用
  • 含锡废水处理的经济效益
  • 【Test】单例模式❗
  • 支持Function Call的本地ollama模型对比评测-》开发代理agent
  • python21-循环小作业
  • 命名空间(C++)
  • 在Dify中创建自定义Drools工具
  • 泽众TestOne精准测试:助力软件开发质量新升级
  • NEGATIVE LABEL GUIDED OOD DETECTION WITH PRETRAINED VISION-LANGUAGE MODELS