在安裝react-native-picker過程中,react-native link報錯,且沒有任何錯誤日志說明錯誤原因,導(dǎo)致運行項目時出現(xiàn)undefined is not an object (evaluating 'Picker._init')的錯誤。
網(wǎng)上找到了兩個解決方案:
https://github.com/beefe/react-native-picker/issues/289
https://github.com/beefe/react-native-picker/issues/294
綜合整理后,解決方案如下:
1.文件./android/settings.gradle中末尾添加:
include?':react-native-picker' project(':react-native-picker').projectDir?=?new?File(rootProject.projectDir,?'../node_modules/react-native-picker/android')
2.文件./android/app/build.gradle的dependencies內(nèi)添加(注意其他行有逗號",",最后一行沒逗號):
... dependencies?{ ????... ????compile?project(':react-native-picker') } ...
3.文件./android/app/src/main/java/com/xxx/xxx/MainApplication.java中添加:
import?com.beefe.picker.PickerViewPackage; ... ????@Override ????protected?ListgetPackages()?{ ??????return?Arrays.asList( ????????new?MainReactPackage(), ????????... ????????new?PickerViewPackage() ??????); ????} ...
4.重新運行項目就OK了。