elementUi中hint定义为全局方法的问题

在index.js中定义了elementUI的提示框想全局使用;在组件中inport了,但是使用会报错。不知道怎么解决this的问题
图片描述

图片描述

阅读 2.8k
2 个回答

箭头函数

export let hint = (message, type) => {
    this.$message({
        message,
        type,
        customClass: 'hint',
        duration: 2000
    })
}

let hint = function(message, type) => {console.log(this)}
普通函数
以函数调用模式,直接调用 hint()
非严格模式下,里面的this指向全局变量,也就是里面的 vue对象
严格模式下,this指向undefined.
并且, ES6 的模块自动采用严格模式,不管有没有在模块头部加上"use strict";
箭头函数
默认指向在定义它时所处的对象(宿主对象),不会指向vue.

所有 改成

 Vue.use(ElementUI);
 var vue = new Vue();
 vue.$message({})

就最直接了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题