1. 程式人生 > >React-Native 踩過的坑

React-Native 踩過的坑

React Native執行的時候,經常碰到React Native unable to load script from assets index.android.bundle on windows解決方法有2種:

方法一:設定IP和埠

具體步驟:報錯頁面晃動手機,顯示選單 =》 點選Dev Settings =》 點選Debug server host & port for device =》 設定IP和埠(ex:192.168.0.20:8081)=》 點選返回 =》 頁面是空白,再次點選搖一搖,選擇Reload JS程式就顯示出來了。

如果這種方法還是不行繼續往下看。

方法二:原因沒有找到assets下檔案,需要手動建立並設定

1.首先手動在main下建立一個assets資料夾
2.然後cmd 進入專案的根目錄下執行:

1

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

執行 這句的時候 報錯index.android.js 不存在,改為index.js(react-native 0.49 之後的版本 已經整合了)

執行語句後 並未產生 index.android.bundle,報 xxx\index.js: Plugin 0 specified in "xxx\\node_modules\\babel-preset-react-native\\index.js" provided an invalid property of "default" (While processing preset: "xxx\\node_modules\\babel-preset-react-native\\index.js") 錯,降級babel 版本執行一下兩句 解決

執行:

npm unstall babel-preset-react-native

npm install --save-dev [email protected]

有時執行react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res/ 報下面的錯,可能是platform Android 寫錯,platform android 必須小寫。

UnableToResolveError: Unable to resolve module `AccessibilityInfo` 錯誤

解決:最終解決我困境的方案是

  • 0 準備: 關閉所有dev過程的console 視窗和IDE,Emulator也關了吧
  • 1 刪除你的依賴資料夾 node_modules
  • 2 清除npm快取 $ npm cache clean --force
  • 3 重新安裝npm依賴 $ npm install
  • 4 Clean RN 環境並重啟試試 $ npm start -- --reset-cache

上面的方法都不行的話,將 react-native 降版本(0.55.4) 解決 

react-native mainapplication.java 錯誤: 找不到符號

寫原生Android java類和React Package時,必須帶上 專案package 包名稱 package com.awesomeproject;

專案package 包名稱目錄

xxx\ReactNativApp\專案\android\app\build\generated\source\buildConfig\debug\com\awesomeproject