js 字符串转方法,this域绑定

             闲着没事,开发一个列表页面配置的功能,其中涉及到了按钮点击事件,在页面进行编辑,保存到数据库中。写好的js脚本,function是字符串格式,所以要让生成的脚本生效,还要做一些操作。

 1.首先保存在数据库中的是字符串格式,如下:

 可以看出这个只是一个字符串,如何让这个字符串转成对象,以及字符串的方法转成可执行的方法?

2.用Function()将字符串转成方法,具体如下

var that = this ;
var
funcTest = (new Function('return '+events))() ;

可以看出,上面的字符串已经变成了可以使用的function,但是还存载问题

3.当点击事件中用到当前域时,会报错,具体如下: 

 其中that 指代的时父域this,会发现,that是undefined,这就存在了问题,父页面的数据在子组件中无法调用了;

4.通过当前子组件域绑定到父的域中,就可以实现,具体如下:

查看相关的this绑定的方法,如下:

https://blog.csdn.net/q3254421/article/details/86074284

https://blog.csdn.net/sllailcp/article/details/90754463?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1

 call()和apply()方法进行this绑定;

原文地址:https://www.cnblogs.com/perferect/p/12736696.html