1 回答

TA貢獻(xiàn)2021條經(jīng)驗(yàn) 獲得超8個(gè)贊
在使用React Native的時(shí)候,經(jīng)常會看到這么一段代碼 var React = require('react-native');1 那么require這個(gè)語句的作用到底是什么呢,下面的流程提取自require() 源碼解讀 當(dāng)遇到 require(X) 時(shí),按下面的順序處理。 (1)如果 X 是內(nèi)置模塊(比如 require(‘http’)) a. 返回該模塊。 b. 不再繼續(xù)執(zhí)行。 (2)如果 X 以 “./” 或者 “/” 或者 “../” 開頭 a. 根據(jù) X 所在的父模塊,確定 X 的絕對路徑。 b. 將 X 當(dāng)成文件,依次查找下面文件,只要其中有一個(gè)存在,就返回該文件,不再繼續(xù)執(zhí)行。 X X.js X.json X.node c. 將 X 當(dāng)成目錄,依次查找下面文件,只要其中有一個(gè)存在,就返回該文件,不再繼續(xù)執(zhí)行。 X/package.json(main字段) X/index.js X/index.json X/index.node (3)如果 X 不帶路徑 a. 根據(jù) X 所在的父模塊,確定 X 可能的安裝目錄。 b. 依次在每個(gè)目錄中,將 X 當(dāng)成文件名或目錄名加載。 (4) 拋出 “not found” 以上就是require語句的整個(gè)執(zhí)行過程。那么require(‘react-native’);請求的到底是什么呢,其實(shí)就是node_modules\react-native\Libraries\react-native\react-native.js這個(gè)文件,該文件中導(dǎo)出了一些常用的組件
- 1 回答
- 0 關(guān)注
- 1625 瀏覽
添加回答
舉報(bào)