vue的super是干什么的

不及物动词 其他 50

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    Vue中的super是用来调用父类的构造函数的。在Vue的组件中,如果我们需要在子类的构造函数中使用父类的构造函数,可以使用super关键字来调用。通过super调用父类的构造函数,可以继承父类的属性和方法,确保子类实例化时能够初始化父类的属性。

    在Vue组件中,每个组件都是一个子类,它会继承Vue的基础功能和方法。当我们创建一个组件时,需要在构造函数中调用super()来继承Vue的属性和方法。具体来说,super()会调用Vue的构造函数,用来初始化组件的状态和属性。

    举个例子,假设我们有一个Vue组件如下:

    Vue.component('my-component', {
      data() {
        return {
          message: 'Hello Vue!'
        }
      },
      created() {
        console.log(this.message);
      }
    })
    

    在这个例子中,我们创建了一个名为'my-component'的组件,其中有一个data属性message和一个created生命周期钩子函数。在created钩子函数中使用了this.message来打印message属性的值。

    当我们实例化这个组件时,Vue会调用组件的构造函数来初始化组件的状态。在这个构造函数中,我们可以使用super()来继承父类Vue的属性和方法。这样,我们就能在组件中正常使用this.message并正确打印出'Hello Vue!'。

    总结一下,Vue中的super关键字是用来调用父类的构造函数,实现子类继承父类的属性和方法。在Vue组件中,我们通常在子类的构造函数中使用super()来继承Vue的属性和方法。这样,在实例化组件时能够正确初始化父类的属性,并在组件中正常使用父类的方法和属性。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Vue.js中,super关键字用于调用父类构造函数。当一个子类继承自父类时,可以使用super关键字来调用父类的构造函数。这样可以在子类中继承父类的属性和方法,并且在子类的构造函数中可以对父类的属性进行初始化。

    具体来说,当子类中使用super关键字时,它会将子类的this对象传递给父类的构造函数,这样父类就可以在初始化时访问子类的属性,并对其进行初始化。

    super关键字可以在子类的构造函数中的任何位置使用,但是它必须在访问this之前调用,否则会报错。在调用super关键字之前,不能使用子类的this关键字。

    除了用于调用父类的构造函数外,super关键字还可以调用父类的方法。通过super关键字,子类可以调用父类中被子类重写的方法,并且在子类方法中使用super关键字可以传递参数给父类方法。

    需要注意的是,如果子类没有显式地定义构造函数,则默认调用父类的构造函数。如果子类定义了构造函数,那么在构造函数中必须使用super关键字调用父类的构造函数,否则会报错。

    总结起来,Vue.js中的super关键字主要用于在子类中调用父类的构造函数,并继承父类的属性和方法。它可以在子类的构造函数中使用,也可以用于调用父类的方法,并且可以传递参数给父类方法。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    vue中的super是用来调用父类的方法的。

    在Vue的开发中,通常会使用vue.extend()方法创建一个新的Vue子类。在这个子类中,可以通过super关键字来调用父类的方法。

    super的作用主要体现在以下几个方面:

    1. 调用父类构造函数:在子类的构造函数中,可以使用super()来调用父类的构造函数。这样做的目的是为了在子类中执行父类的构造逻辑。例如:
    Vue.extend({
      created: function () {
        //执行父类的created方法
        this._super();
      }
    });
    
    1. 调用父类方法:在子类的方法中,使用super关键字可以调用父类中具有相同名称的方法。这样做的目的是为了在子类中重写父类的方法,并在子类中使用父类的逻辑。例如:
    Vue.extend({
      methods: {
        greet: function () {
          //在子类的greet方法中调用父类的greet方法
          this._super();
          console.log('Hello from child class');
        }
      }
    });
    
    1. 扩展父类方法:在子类中,可以通过super关键字扩展父类的方法。这样做的目的是为了在子类中添加额外的逻辑,并在调用父类方法之前或之后执行。例如:
    Vue.extend({
      methods: {
        greet: function () {
          //在子类的greet方法中扩展父类的greet方法
          console.log('Before calling super');
          this._super();
          console.log('After calling super');
        }
      }
    });
    

    总结来说,super关键字在Vue中用于调用父类的方法,可以实现父子类之间的方法调用和逻辑扩展。在子类中,使用super可以在继承父类的基础上,添加额外的逻辑或修改父类的方法。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部