vue2和vue3插件的区别
弹窗组件
这个vue2和vue3是一样的
<template>
<div v-if="active" class="alert">
<div class="alert-box">
{{ text }}
</div>
</div>
</template>
<script>
export default {
data() {
return {
active: false,
text: '',
timer: null
}
},
methods: {
info(text) {
console.log(this);
this.text = text;
this.active = true;
if (this.timer) {
clearTimeout(this.timer);
this.timer = null;
}
this.timer = setTimeout(() => {
this.active = false;
}, 2000);
}
}
}
</script>
<style lang="less">
.alert {
position: fixed;
z-index: 9;
top: 20px;
left: 0;
right: 0;
margin: auto;
width: 180px;
padding: 10px 16px;
border-radius: 2px;
margin: auto;
box-shadow: 0 3px 6px -4px #0000001f, 0 6px 16px #00000014,
0 9px 28px 8px #0000000d;
background-color: white;
color: black;
.icons {
position: relative;
top: 2px;
margin-right: 6px;
}
}
</style>
将组件注册为全局插件--vue2
import Alert from "./alert.vue";
export default {
install(Vue) {
// 通过Vue.extend创建子类(注意是个构造类)
const AlertCmp = Vue.extend(Alert);
// 初始化这个子类
const alertCmp = new AlertCmp();
// 将其挂载到指定dom上,也可以不写默认挂载到body上
const div = document.createElement("div");
document.body.append(div);
alertCmp.$mount(div);
// 注册全局方法,方便使用
Vue.prototype.$alert = {
info: alertCmp.info
};
},
};
使用这个插件--vue2
import Vue from 'vue'
import App from './App.vue'
import Alert from '../packages'
Vue.config.productionTip = false;
Vue.use(Alert);
const app = new Vue({
render: h => h(App)
}).$mount('#app')
以下是vue3版本的操作,
我们来对比下
将组件注册为全局插件--vue3
import { createApp } from 'vue'
import Alert from "./alert.vue";
export default {
install(app) {
// 通过createApp创建子类实例 并挂载
const div = document.createElement("div");
document.body.append(div);
const alertApp = createApp(Alert).mount(div)
// 注册全局方法,方便使用
app.config.globalProperties.$alert = {
info: alertApp.info
};
}
};
使用这个插件--vue3
import { createApp } from 'vue'
import App from './App.vue'
import alertGoodVue3 from '../packages'
const app = createApp(App).use(alertGoodVue3).mount('#app')
vue2和vue3插件的区别的更多相关文章
- vue2和vue3生命周期的区别
概念 首先,我们了解一下"生命周期"这个词.通俗的来说,生命周期就是一个事务从出生到消失的过程.例如,一个人从出生到去世.在vue中,vue的生命周期是指,从创建vue对象到销毁v ...
- vue2和vue3的区别?
vue2和vue3的主要区别在于以下几点: 1.生命周期函数钩子不同 2.数据双向绑定原理不同 3.定义变量和方法不同 4.指令和插槽的使用不同 5.API类型不同 6.是否支持碎片 7.父子组件之间 ...
- vue2和vue3区别
1. vue2和vue3双向数据绑定原理发生了改变 vue2的双向数据绑定是利用了es5 的一个API Object.definepropert() 对数据进行劫持 结合发布订阅模式来实现的.vue3 ...
- Vue2和Vue3技术整理1 - 入门篇 - 更新完毕
Vue2 0.前言 首先说明:要直接上手简单得很,看官网熟悉大概有哪些东西.怎么用的,然后简单练一下就可以做出程序来了,最多两天,无论Vue2还是Vue3,就都完全可以了,Vue3就是比Vue2多了一 ...
- vue2升级vue3:Vue Demij打通vue2与vue3壁垒,构建通用组件
如果你的vue2代码之前是使用vue-class-component 类组件模式写的.选择可以使用 https://github.com/facing-dev/vue-facing-decorator ...
- Vue2 到 Vue3,重温这 5 个常用的 API
距离Vue3发布已经过去一年多时间了,从Vue2到Vue3是一个不小的升级,包括周边生态等.虽然目前大多数开发者们在使用的仍旧以Vue2为准,但Vue3显然是Vue开发者们未来必须面对的,而且前不久V ...
- vue2升级vue3:vue2 vue-i18n 升级到vue3搭配VueI18n v9
项目从vue2 升级vue3,VueI18n需要做适当的调整.主要是Vue I18n v8.x 到Vue I18n v9 or later 的变化,其中初始化: 具体可以参看:https://vue- ...
- vue2升级vue3指南(二)—— 语法warning&error篇
本文总结了vue2升级vue3可能会遇到的语法警告和错误,如果想知道怎样升级,可以查看我的上一篇文章:vue2升级vue3指南(一)-- 环境准备和构建篇 Warning 1.deep /deep/和 ...
- 盘点Vue2和Vue3的10种组件通信方式(值得收藏)
Vue中组件通信方式有很多,其中Vue2和Vue3实现起来也会有很多差异:本文将通过选项式API 组合式API以及setup三种不同实现方式全面介绍Vue2和Vue3的组件通信方式.其中将要实现的通信 ...
- vue2升级vue3:vue-i18n国际化异步按需加载
vue2异步加载之前说过,vue3还是之前的方法,只是把 i18n.setLocaleMessage改为i18n.global.setLocaleMessage 但是本文还是详细说一遍: 为什么需要异 ...
随机推荐
- Chrome谷歌浏览器常用快捷键、开发技巧
谷歌浏览器作为常用的开发工具,熟悉常用的快捷键,不仅方便快捷,也能间接提高不少工作效率.以下是谷歌浏览器常用快捷键和开发技巧. 标签页和窗口快捷键 1. Ctrl + n 打开新窗口 2. Ctrl ...
- unity 多层叠加的BillBoard特效转序列帧特效降低overdraw
- 使用java代码获取JVM信息
转载请注明出处: 最近在环境中定位服务问题,由于服务使用的docker部署的,且使用的docker镜像,在启动之后,容器内没有jdk相关的工具[jstat.jmap等等]:于是采用 在项目中使用jav ...
- Lock 同步锁
一. /* * 一.用于解决多线程安全问题的方式: * * synchronized:隐式锁 * 1. 同步代码块 * * 2. 同步方法 * * jdk 1.5 后: * 3. 同步锁 Lock * ...
- eolinker返回值正则处理后设置为全局变量
特别注意:需要使用全局变量前务必阅读本链接https://www.cnblogs.com/becks/p/13713278.html 如下图,返回值content内,需要取出验证码后面的数字 预处理, ...
- Python3批量爬取美女照片并保存到本地(二)
Python3批量爬取美女照片并保存到本地(二) 上一波写错了,很尴尬,就能爬显示的一部分照片,网站有限制,从上波的爬取可以看出来,返回的json中只有一部分图片,其余的需要登录才能下载,我们这次通过 ...
- ServletContext相关
简介 如何得到对象 有什么作用 1.获取全局配置参数 2.获取web工程中的资源 3.存取数据,servlet间共享数据 域对象 ServlerContext的生命周期 ServletContext ...
- 【记录】PR|一些使用技巧记录
文章目录 [PR最重要的两个操作] 一.关键帧 1. 如何设置关键帧? 2. 应用实例 1)1s内视频从明变暗 2)1s内视频画面由大到小 二.入点.出点 [其他] PR批量调整视频效果 PR剪视频片 ...
- Linux的二进制表示格式—ELF
之前在解决项目中关于解析core文件中,了解了关于ELF的相关知识,当时还处于萌新(现在还处于萌新状态)对于ELF格式那是一脸懵,今天就对ELF做一个简单的了解. ELF 首先一个文本文件只有经过编译 ...
- 网络编程:TCP故障模式
故障模式总结 异常情况可归结为两大类: 第一类,是对端无FIN包发送出来的情况:第二类是对端有FIN包发出来 对端无FIN包发送出 网络终端造成对端无FIN包 很多原因都会造成网络中断,这种情况,TC ...