#node.js #webpack #expo #sharp
#node.js #веб-пакет #Экспо #острый
Вопрос:
При попытке запустить Expo для Интернета я получаю сообщение об ошибке «Не удалось найти экземпляр sharp, используемый глобальным пакетом sharp-cli» после создания файла с именем webpack.config.js
в корневой папке моего приложения. Содержимое файла может быть таким же простым, как реализация expo по умолчанию, и все равно не удастся:
module.exports = async function(env, argv) { const loadDefaultConfigAsync = require('@expo/webpack-config'); return await loadDefaultConfigAsync(env, argv); };
Версия узла: v16.3.1
Версия NPM: v8.1.2
{ "name": "foo", "version": "1.0.0", "main": "node_modules/expo/AppEntry.js", "scripts": { "start": "expo start", "android": "expo start --android", "ios": "expo start --ios", "web": "expo start --web", "eject": "expo eject", "test": "jest --watchAll" }, "jest": { "preset": "jest-expo" }, "dependencies": { "@expo/vector-icons": "^12.0.0", "@expo/webpack-config": "^0.16.11", "@react-navigation/bottom-tabs": "^6.0.5", "@react-navigation/native": "^6.0.2", "@react-navigation/native-stack": "^6.1.0", "expo": "~43.0.2", "expo-asset": "~8.4.3", "expo-constants": "~12.1.3", "expo-font": "~10.0.3", "expo-linking": "~2.4.2", "expo-splash-screen": "~0.13.5", "expo-status-bar": "~1.1.0", "expo-web-browser": "~10.0.3", "react": "17.0.1", "react-dom": "17.0.1", "react-native": "0.64.3", "react-native-safe-area-context": "3.3.2", "react-native-screens": "~3.8.0", "react-native-web": "0.17.1" }, "devDependencies": { "@babel/core": "^7.12.9", "@types/react": "~17.0.21", "@types/react-native": "~0.64.12", "jest-expo": "~43.0.0", "typescript": "~4.3.5" }, "private": true }
Ответ №1:
После некоторого поиска в Интернете я с пустыми руками нашел простое решение, которое сработало. Мне удалось обойти эту проблему, установив sharp-cli
в качестве локальной зависимости и сохранив ее в с package.json
помощью следующей команды:
npm install -save sharp-cli