1、
在使用vue开发的过程当中不免要整合第三方js或者jq。
可是整合后的js与jq没法使用vue页面里面的方法与data。
时常发生明明在同一个vue页面里面却没法调用到方法属性。
其实这是你的调用方式不对。
我遇到过的就是jquery-contextmenu的右击事件问题
这是咱们要付给右击事件的操做,selector是id,items是右击事件 触发的方法在下面(这里的callback回调函数,方法.call(自己的this,参数S)的意思是:在这个方法里调用其余对象的方法,以其余对象替代自己对象)
2、
这是触发事件的定义在data里面定义箭头函数,而后传给上图的方法里vue
而后咱们来看一下效果,当我点击添加节点能够运行可是单击添加子节点报错了。这是由于函数建立了本身的this,因此没法获取到咱们想要的。而箭头函数不会建立本身的this,它只会从本身的做用域链的上一层继承this。因此能访问到咱们所定义的属性值。
3、
触发方法调用不能使用function(){}
须要使用()=>{}的方式,这个ES6特有的写法。es6 箭头函数不会有新的做用域
若是你是在第三方js中要调用vue页面的data、methods的话必须先以参数的形式转过去,而后在根据参数调用。而后vue页面就是如上所述的那种写法。jquery
箭头函数文档es6