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 做的事情實在是太像了。不知道
題主是不是就是想要這個?
添加回答
舉報