1. 程式人生 > >【React Native】React Native之Could not get BatchedBridge,make sure...的問題

【React Native】React Native之Could not get BatchedBridge,make sure...的問題

 下載了一個專案,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專案是無法執行的。