vue-authenticate:$ auth变量在哪里定义?

时间:2018-02-28 19:41:04

标签: vue.js

我正在尝试实施vue-authenticate,但我遇到了以下示例代码的问题:

new Vue({
  methods: {
    login: function () {
      this.$auth.login({ email, password }).then(function () {
        // Execute application logic after successful login
      })
    },

    register: function () {
      this.$auth.register({ name, email, password }).then(function () {
        // Execute application logic after successful registration
      })
    }
  }
})

$auth属性来自何处?我无法在任何地方看到它。我查看了文档和repo中的示例代码,但都没有提供任何帮助。

1 个答案:

答案 0 :(得分:1)

如您所知vue-authenticate是Vue-plugin。

使用此行时使用此插件。

Vue.use(VueAuthenticate, ...data)

这是this file

中定义的地方
Object.defineProperties(Vue.prototype, {
  $auth: {
    get() {
      if (!vueAuthInstance) {
        // Request handler library not found, throw error
        if (!this.$http) {
          throw new Error('Request handler instance not found')
        }

        vueAuthInstance = new VueAuthenticate(this.$http, options)
      }
      return vueAuthInstance
    }
  }
})

您也可以在Adding Instance Properties上查看此文档。