TypeError: undefined is not an object (evaluating ‘props.getItem’)
@babel/plugin-proposal-class-properties 的锅
解决
添加.babelrc
配置优先级 @babel/plugin-transform-flow-strip-types 高于 @babel/plugin-proposal-class-properties
{
"plugins": [["@babel/plugin-transform-flow-strip-types"],
["@babel/plugin-proposal-decorators", { "legacy": true}],
["@babel/plugin-proposal-class-properties", { "loose": true}]
]
}
清除缓存并启动 expo start -c
迷
不做上述处理,不知道为什么原项目不会报错,但当把整个项目 copy(包括 node_modules) 然后挪个位或者换个名就会报以上错误。
Failed to install the following Android SDK packages as some licences have not been accepted.
原因
一般产生于没用过 Android Studio,直接打开项目 build。
解决
macOS : yes | sudo ~/Library/Android/sdk/tools/bin/sdkmanager --licenses
Windows: %ANDROID_HOME%/tools/bin/sdkmanager --licenses
Execution failed for task ‘:app:validateSigningDebug’.
方案一
点击 Android studio File- 选择 ProjectStructure- 选择 app- 选择 signing
最后直接把 Store File 里指定的 Keystore 文件的路径换成自己的 Keystore 路径 (当然这里可能需要自己签名有点麻烦)
再 clean 一下工程就可以了。
方案二
打开 build.gradle(Module:app),把 signingConfigs 节点注释掉;再把 buildTypes 节点改成原始的:
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}