我是React Native的新手。 npm安装后是否可以自动为第三方库设置正确的sdk版本或其他内容?因为有时当我弄乱项目并且代码无法回滚时,我会删除它并从git克隆项目。但这就是问题,因为android库sdk版本和ios库搜索路径不正确,我需要自己更正它们。
答案 0 :(得分:1)
将postinstall
添加到package.json脚本中。安装运行后,它将自动运行:
"postinstall": "./edit_modules.sh",
并在项目根目录中创建一个edit_modules.sh
文件。像这样:
#!/bin/bash
if [[ "$OSTYPE" == "darwin"* ]]; then
SED_CMD="sed -i ''"
else
SED_CMD="sed -i"
fi
$SED_CMD 's/<pattern to find>/<replace with>/' <path to file relative to root>
sed
的if / else是因为它在macOS和Linux上具有不同的签名。
在我们的项目中有sed示例:
$SED_CMD 's/#import <fishhook\/fishhook.h>/#import "fishhook.h"/' ./node_modules/react-native/Libraries/WebSocket/RCTReconnectingWebSocket.m