Vue选项之extends扩展

extends扩展和mixins很像,不同点是extends传入的是对象写法,而mixins是数组写法.

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>lianxi</title>
  </head>
  <body>
    <div id="app">
        {{num}}
        <p><button @click="add">ADD</button></p>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
    <script>
      let extendObj={
          updated:function(){//updated是Vue生命周期
            console.log("我是扩展的updated");
          },
          methods: {
              add(){
                  console.log("我是扩展出来的ADD方法");//和混入一样:当原生有同一个方法时,扩展出来的方法不会执行,只会执行原生的方法                
              }
          },
      }
      let app = new Vue({
        el: '#app',
        data:{
            num:1
        },
        methods:{
            add(){
                console.log("我是原生的ADD方法");      
                this.num++;
            }
        },
        updated() {
            console.log("我是原生的updated");// 
        },
        extends:extendObj
      })
    </script>
  </body>
</html> 

实现结果:
在这里插入图片描述
注意点:extends扩展和mixins混入一样,当原生有同一个方法时,扩展出来的方法不会执行,只会执行原生的方法

猜你喜欢

转载自blog.csdn.net/xiaodi520520/article/details/88826604