vue插件开发教程,vue3 插件
本文主要介绍Vue3.0插件的实现原理和实战。Vue项目可以使用很多插件来丰富自己的功能,比如Vue-Router、Vuex等,为我们节省了大量的人力物力。先来了解一下Vue3.0插件的原理,朋友们可以参考一下。
目录
一、通过函数II用install()方法编写插件1.1 Object1.2。使用插件III。app.use()如何执行插件?
一、编写插件
Vue项目可以使用很多插件来丰富自己的功能,比如Vue-Router、vuex等。那么多插件可供我们使用,节省了我们大量的人力物力。那么这些插件是开发出来的吗?我们想拥有自己的vue插件吗?下面是如何编写我们自己的Vue插件。
1.1 包含install()方法的Object
Vue插件可以是包含install方法的Object对象,调用插件时将调用该对象。
如下所示:
导出默认值{
//接收两个参数
//app:应用程序上下文的实例
//options:插件输入的选项。
安装:(应用程序,选项)={
console.log(app ,app);
console.log(options ,选项);
//做一些处理
//……
}
}
1.2 通过function的方式
Vue插件也可以是函数function,当调用插件时,函数function本身也会被调用,
如下所示:
导出默认函数TestPlugin(应用程序,选项){
console.log(app ,app);
console.log(options ,选项);
}
二、使用插件
上面已经解释了如何编写自己的插件。插件写好之后,就需要使用了。那么这些插件应该如何使用呢?其实用起来很简单,在应用上下文的实例上提供了相应的使用方法。
app.use(插件,[选项]);//返回一个应用实例,这样就可以链式添加新的插件。
三、app.use()是如何执行插件的
为什么app.use()可以使用这些插件?本着“知其然而不知其所以然”的精神,我们来看看为什么。以下是相应的源代码:
函数createApp(rootComponent,rootProps=null) {
//……
const installed plugins=new Set();
const app=(context.app={
//……
使用(插件,选项){
if(installed plugins . has(plugin)){
警告(`插件已应用于目标应用程序。`);
}
else if(plugin shared . is function(plugin . install)){
installedPlugins.add(插件);
plugin.install(app.选项);
}
else if(shared . is function(plugin)){
installedPlugins.add(插件);
插件(app,选项);
}
否则{
警告(`插件必须是带有 install 的函数或对象
` function . `);
}
退货app
},
//……
});
退货app
};
上述代码读起来很简单,其实现了以下几件事情:
使用Set结构存储插件,当插件存在时抛出异常;通过判断安装方法是否存在或是否为函数来执行相应的插件;插件执行时,app context实例和选项作为参数传入;关于Vue3.0插件的实现原理和实战的这篇文章到此为止。关于Vue插件实现原理的更多信息,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。