1 回答

TA貢獻2011條經(jīng)驗 獲得超2個贊
寫成字符串加參數(shù),仿照JSONP式調(diào)用
代碼的話,大概是這樣
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);
根據(jù)評論我再說一下吧,可以把函數(shù)寫到 json 配置中,舉個不恰當(dāng)?shù)睦?
問題是為什么要這么做?一般不會把 函數(shù)主體寫到JSON里面,一般會這么寫:
對,這個某個node下json的依賴,它這里面的每一項都是一個JS函數(shù)(確切的說是包),主體邏輯都是寫在包里面
很簡潔,不會搞亂邏輯。
我這邊也簡述一下nodejs 是怎么通過json 來尋找配置的JS文件吧。
首先node會解析當(dāng)前路徑下的package.json 文件, 從devDependencies 里面獲取其配置(依賴)的函數(shù)(包)。
然后node在通過尋徑函數(shù)(具體細節(jié)不說)找到包所在的位置,讀取該路徑下的package.json文件的 main屬性,這個
main就是函數(shù)(包)的文件主體,你在里面怎么寫都可以。
而不推薦直接把主體寫在json里面的理由也簡單
1) 多且亂
2) 一旦出現(xiàn)兩個函數(shù)之間有嵌套關(guān)系,就非常難弄。
等等。。。
這個問題一開始我也是想錯方向了,后來想想題主說的和nodejs的package.json 做的事情實在是太像了。不知道
題主是不是就是想要這個?
添加回答
舉報