Реагировать на собственное обновление третьей стороны автоматически после npm - PullRequest
0 голосов
/ 06 декабря 2018

Я новичок на родной реакции.Можно ли автоматически установить правильную версию SDK или другие компоненты для сторонней библиотеки после установки npm?Потому что иногда, когда я портю проект и код не может быть отменен, я удаляю его и клонирую проект из git.Но это проблема, потому что версия SDK библиотеки Android и путь поиска библиотеки IOS неверны, мне нужно исправить их самостоятельно.

1 Ответ

0 голосов
/ 06 декабря 2018

Добавьте 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>

if / else для sed, потому что у него разные подписи на macos и linux.

И пример sed у нас в проекте:

$SED_CMD 's/#import <fishhook\/fishhook.h>/#import "fishhook.h"/' ./node_modules/react-native/Libraries/WebSocket/RCTReconnectingWebSocket.m
...