1 回答
TA贡献2011条经验 获得超2个赞
写成字符串加参数,仿照JSONP式调用
代码的话,大概是这样
var jsonObj = {
callFn: "callback('a', 'b')"
}
var callback = function(a,b) {
console.log(a,b)
}
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
newScript.innerHTML = jsonObj.callFn;
document.body.appendChild(newScript);
根据评论我再说一下吧,可以把函数写到 json 配置中,举个不恰当的例子:
问题是为什么要这么做?一般不会把 函数主体写到JSON里面,一般会这么写:
对,这个某个node下json的依赖,它这里面的每一项都是一个JS函数(确切的说是包),主体逻辑都是写在包里面
很简洁,不会搞乱逻辑。
我这边也简述一下nodejs 是怎么通过json 来寻找配置的JS文件吧。
首先node会解析当前路径下的package.json 文件, 从devDependencies 里面获取其配置(依赖)的函数(包)。
然后node在通过寻径函数(具体细节不说)找到包所在的位置,读取该路径下的package.json文件的 main属性,这个
main就是函数(包)的文件主体,你在里面怎么写都可以。
而不推荐直接把主体写在json里面的理由也简单
1) 多且乱
2) 一旦出现两个函数之间有嵌套关系,就非常难弄。
等等。。。
这个问题一开始我也是想错方向了,后来想想题主说的和nodejs的package.json 做的事情实在是太像了。不知道
题主是不是就是想要这个?
添加回答
举报