vue公共js文件无法使用this解决
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
前言:在把前端公共的功能放到公共的js文件里的时候,无法使用this去引用已经全局注册的组件和this本身都是unfinished目录解决之前:解决之后:解决思路:解决之前:调用处:test(){//测试没有thismyDialog();},具体方法://弹出对话框functionmyDialogno(){this.$alert("测试this","猫",{confirmButtonText:"确定",});}//将全局公共方法,组合成一个对象,并暴露出去exportdefault{myDialogno}解决之后:调用处:test(){//测试没有thisvarthat=this;sendThis(that);myDialog();},具体方法://用来获取调用此js的vue组件实例(this)letvm=null;constsendThis=(_this)=>{vm=_this;};//弹出对话框functionmyDialog(){vm.$alert("测试this","猫",{confirmButtonText:"确定",});}//将全局公共方法,组合成一个对象,并暴露出去exportdefault{sendThis,//暴露函数myDialog}解决思路:可以模仿后端的set方法给属性赋值,所以可以在公共的js文件里声明一个vm的属性和setThis(_this)方法给公共的js里的属性vm赋值,这样this可以作为参数被传递(中心思想,还是把this对象当做参数传递)。关注博主即可阅读全文 -全文完-