【React Native】React Native之Could not get BatchedBridge,make sure...的問題
阿新 • • 發佈:2019-02-10
下載了一個專案,npm install安裝之後,再次執行,卻出現Could not get BatchedBridge,make sure your bundle is packaged correctly的錯誤。
長這個樣:
先說解決方法:
1 . 在專案的android/app/src/main目錄下,新建一個assets資料夾。
2 . 在專案的根目錄下,通過git-cmd執行命令:
react-native bundle –platform android –dev false –entry-file index.android.js –bundle-output android/app/src/main/assets/index.android.bundle –assets-dest android/app/src/main/res/
命令執行完到這裡就可以了。
注意:如果沒有新建assets資料夾就執行命令列,會出現no such file or directory的錯誤
原因:
這是因為Bundle檔案和包資料夾不正確導致。新建的資料夾會出來bundle.js檔案。而執行呼叫時查詢直接assets目錄並不存在,需要手動建立。
index.android.bundle呼叫的是原生控制元件的js指令碼,index.android.js通過bundle呼叫原生控制元件js指令碼,當改變了 index.android.js,都需要使用上面的程式碼片段,來及時的更新index.android.bundle,然後打包才可以把新的index.android.js應用上,當沒有index.android.bundle檔案時,RN專案是無法執行的。