[英]Module not found: Can't resolve 'react-native' - React Native
我剛開始學習 React Native,想在頁面中添加輸入字段。 我已經完成了本教程來添加輸入字段。 但是每當我運行 React App 時,它都會拋出以下錯誤。
./src/Inputs.js
Module not found: Can't resolve 'react-native' in 'E:\hybrid\reactDemo\src'
我檢查了 react-native 節點模塊是否存在,然后我才知道模塊 react-native 不存在。 我安裝它再次運行應用程序,但它顯示相同的錯誤。 我為此花費了 8 多個小時,但無法解決此錯誤。 我已經嘗試了谷歌的所有解決方案,但沒有一個對我有用。
注意:我使用的是 windows PC
更新 1:我正在導入 react-native,如下所示
import { View, Text, TouchableOpacity, TextInput, StyleSheet } from 'react-native'
更新 2:
這是我的 package.json 文件
{
"name": "reactDemo",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^16.3.1",
"react-dom": "^16.3.1",
"react-native": "^0.54.4",
"react-router": "^3.0.5",
"react-scripts": "1.1.4"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
}
你的項目看不到 react-native 包。 如果您已經安裝了所有必需的依賴項(用於使用 react-native),請轉到本文末尾。 如果沒有,我建議你有以下幾點:
================================================== ======================
首先,您需要兼容的 babel-jest 依賴項。 要修復依賴樹,請嘗試按照以下確切順序執行以下步驟:
上面的配置不需要你手動配置 webpack,因為 react-scripts 做到了。
也許你不使用所有這些,甚至不使用 react-scripts,所以你必須配置你的 webpack.config.js。 要解決此問題,請嘗試以下操作:
const path = require('path')
module.exports = ({platform}, defaults) => ({
...defaults,
entry: './index.js',
/* ... */
resolve: {
...defaults.resolve,
alias: {
...defaults.resolve.alias,
react: path.join(__dirname, 'node_modules/react'),
'react-native': path.join(__dirname, 'node_modules/react-native'),
}
}
})
我不確定,但就我而言,它有助於通過npm install react-native-web
。 希望對你也有幫助。
要將網絡支持添加到現有的 Expo 應用程序,您可以執行以下操作:
npm i -g expo-cli
yarn add react-native-web react-dom
expo start:web
在純 web 模式下更快地expo start:web
您還可以運行expo start --web
這將立即啟動 Webpack。文件路徑沒有正確提及。 請再次檢查。 問題在於您外部導入 src 目錄中的文件並確認該文件位於上述路徑中。
您正在嘗試在其他 react 項目中添加 react-native。 React Native 類似於 React,但它使用原生組件而不是 Web 組件作為構建塊。 因此,在新文件夾中使用npm install -g react-native-cli 安裝 react-native ,然后使用react-native init ProjectName啟動新的 react-native 項目。
在 React Native 項目文件夾中運行react-native run-ios / run-android
我會推薦EXPO ,它只需一個命令就可以設置本地編寫 react-native 所需的一切。 首先下載expo-cli; 在您的命令行中;
npm install expo-cli --global
安裝完成后,運行這個命令來創建一個項目;
expo init name_of_project
就是這樣。 一切都將完成,現在您只需開始編寫一些代碼。
只需在主應用程序文件夾中運行npm install
解決我的問題。
我已經通過 expo init name_of_project 創建了項目,它也在網絡上運行,但是當我通過這個命令添加 mapbox 時 npm install @react-native-mapbox-gl/maps --save 我有一些錯誤
./node_modules/react-native/Libraries/Image/AssetSourceResolver.js:24:17 找不到模塊:無法解析“../Utilities/Platform” 22 | 23 | const PixelRatio = require('../Utilities/PixelRatio');
24 | const Platform = require('../Utilities/Platform'); | ^ 25 | 26 | const invariant = require('invariant'); 27 |
自從很多天“找不到模塊”以來,我一直面臨這個問題,簡單的解決方案是 go 到您的項目文件夾並刪除node_modules文件夾,然后嘗試我希望這個答案對您有幫助,謝謝。
升級 Webpack 后我遇到了類似的問題,對我來說執行全新安裝將解決它。
npm ci
我剛剛開始學習React Native,並想在頁面上添加輸入字段。 我已經完成了本教程來添加輸入字段。 但是,每當我運行React App時,它都會引發以下錯誤。
./src/Inputs.js
Module not found: Can't resolve 'react-native' in 'E:\hybrid\reactDemo\src'
我已經檢查了react-native節點模塊是否存在,然后我知道了模塊react-native不存在。 我安裝了它,再次運行該應用程序,但顯示相同的錯誤。 我在此上花費了8多個小時,但無法解決此錯誤。 我已經嘗試了所有來自google的解決方案,但沒有一個對我有用。
注意:我使用的是Windows PC
更新1:我正在導入react-native,如下所示
import { View, Text, TouchableOpacity, TextInput, StyleSheet } from 'react-native'
更新2:
這是我的package.json文件
{
"name": "reactDemo",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^16.3.1",
"react-dom": "^16.3.1",
"react-native": "^0.54.4",
"react-router": "^3.0.5",
"react-scripts": "1.1.4"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.