• Vue自定义插件的使用


     通过 Vue 实例绑定方法:

     在 plugins.js 文件中创建 filter 过滤器,定义一个只返回前四个字符的方法。

    1. export default {
    2. install(Vue){
    3. // 定义过滤器
    4. Vue.filter('mySlice',function(value){
    5. return value.slice(0,4);
    6. })
    7. }
    8. }


    由于我们之前在 main.js 文件中引入过,所以直接在 Home.vue 页面使用即可。

    1. <template>
    2. <div>
    3. <h1>{{ title | mySlice }}h1>
    4. div>
    5. template>
    6. <script>
    7. export default {
    8. name: 'Home',
    9. data() {
    10. return {
    11. title: "青青草原喜洋洋股份有限公司"
    12. }
    13. }
    14. }
    15. script>

    :这个插件就相当于在全局注册了一个过滤器,任何地方都可以使用。

     

     注:除了通过 Vue 实例绑定,还可以往 Vue 原型上绑定方法,这样 Vue 实例和组件都能使用这个方法。

     通过原型链绑定方法:

    在 plugins.js 文件中给 Vue 的原型添加一个自定义方法。

    1. export default {
    2. install(Vue){
    3. // 定义过滤器
    4. Vue.filter('mySlice',function(value){
    5. return value.slice(0,4);
    6. })
    7. // 通过原型链创建方法
    8. Vue.prototype.hello = () => {
    9. alert("你好呀!");
    10. }
    11. }
    12. }

    然后在 Home.vue 页面创建点击事件使用这个方法。

    1. <template>
    2. <div>
    3. <h1 @click="hello">{{ title | mySlice }}h1>
    4. div>
    5. template>
    6. <script>
    7. export default {
    8. name: 'Home',
    9. data() {
    10. return {
    11. title: "青青草原喜洋洋股份有限公司"
    12. }
    13. }
    14. }
    15. script>

    :由于 Vue 实例和组件共用一个原型对象,所以这个方法在任何地方也都可以使用。

     

     

     自定义插件接收参数:

    插件还可以接收自定义参数,只需要在引用时传递接收即可。例如:main.js 文件

    1. import Vue from 'vue'
    2. import App from './App.vue'
    3. import router from './router'
    4. // 引入插件
    5. import plugins from './plugins'
    6. Vue.config.productionTip = false
    7. // 使用插件,并传递参数
    8. Vue.use(plugins,1,2,3)
    9. new Vue({
    10. router,
    11. render: h => h(App)
    12. }).$mount('#app')

    然后在 plugins.js 文件中的 install 方法里接收。

    1. export default {
    2. install(Vue,a,b,c){
    3. console.log(Vue);
    4. console.log(a,b,c); // 1 2 3
    5. // 定义过滤器
    6. Vue.filter('mySlice',function(value){
    7. return value.slice(0,4);
    8. })
    9. // 通过原型链创建方法
    10. Vue.prototype.hello = () => {
    11. alert("你好呀!");
    12. }
    13. }
    14. }

    :install 方法的第一个参数永远是 Vue 实例的构造函数,之后接收的才是自定义的参数

     

    原创作者:吴小糖

    创作时间:2023.5.28
     

  • 相关阅读:
    FastAPI学习-24.自定义异常处理器 exception_handler
    郁金香2021年游戏辅助技术中级班(一)
    Swagger:在线接口文档
    Web容器和Servlet容器、Spring和SpringMvc
    ESP8266-Arduino编程实例-PIR(被动红外)传感器驱动
    python元组与列表的区别
    esp32 arduino使用多个串口时如何查看serial1,serial2所对应的引脚定义
    数据结构:7种哈希散列算法,你知道几个?
    BM83 字符串变形
    this指针
  • 原文地址:https://blog.csdn.net/xiaowude_boke/article/details/130909847