You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native报错:无法解析'react-native'模块求助

解决React Native模块找不到的问题

嘿,我来帮你搞定这个报错问题!你遇到的Module not found: Can't resolve 'react-native'本质上是项目环境不匹配导致的,我给你拆解两种最可能的场景和对应的解决办法:

场景1:你确实想开发React Native移动端应用

如果你的目标是做iOS/Android的移动端App,那问题出在你可能用create-react-app初始化了一个Web React项目——这和React Native项目是完全不同的两套环境,哪怕你手动安装了react-native模块也没法兼容。按下面的步骤重新搭建项目就好:

  • 先把当前的Web项目备份或者删除,然后按照React Native官方要求搭好基础开发环境(比如Node、JDK、Android Studio/Xcode这些,具体看你要开发的平台)
  • 用React Native官方的初始化命令创建项目:
    npx react-native init MyReactNativeApp
    
  • 进入项目目录后,启动项目:
    # Android平台
    npx react-native run-android
    # iOS平台
    npx react-native run-ios
    
  • 然后创建你的Inputs.js组件,记得正确导入React Native的组件:
    import React from 'react';
    import { View, TextInput, StyleSheet } from 'react-native';
    
    const Inputs = () => {
      return (
        <View style={styles.container}>
          <TextInput 
            style={styles.input}
            placeholder="请输入内容"
            autoCapitalize="none"
          />
        </View>
      );
    };
    
    const styles = StyleSheet.create({
      container: {
        padding: 16,
        flex: 1,
        justifyContent: 'center',
      },
      input: {
        height: 44,
        borderColor: '#ccc',
        borderWidth: 1,
        borderRadius: 8,
        paddingHorizontal: 12,
        backgroundColor: '#fff',
      },
    });
    
    export default Inputs;
    
  • 最后在App.js里导入并使用这个组件,重启项目就不会报错了。

场景2:你其实是想在Web React项目里添加输入框

如果你的目标是做Web应用,那完全没必要用React Native的组件!直接用HTML原生的input标签配合React的受控组件逻辑就可以,比如:

import React, { useState } from 'react';

const Inputs = () => {
  const [inputValue, setInputValue] = useState('');

  const handleInputChange = (e) => {
    setInputValue(e.target.value);
  };

  return (
    <div style={{ padding: '2rem', maxWidth: '400px', margin: '0 auto' }}>
      <input
        type="text"
        value={inputValue}
        onChange={handleInputChange}
        placeholder="请输入内容"
        style={{
          width: '100%',
          padding: '0.75rem',
          border: '1px solid #ddd',
          borderRadius: '6px',
          fontSize: '1rem',
        }}
      />
      <p style={{ marginTop: '1rem', fontSize: '1.1rem' }}>
        你输入的内容:{inputValue}
      </p>
    </div>
  );
};

export default Inputs;

直接把这个组件放到你的create-react-app项目里用就行,不需要安装任何额外的移动端依赖。

额外排查小技巧(如果是React Native项目仍报错)

如果确认是正经的React Native项目,但还是报错,可以试试:

  • 删除项目根目录下的node_modules文件夹和package-lock.json(或yarn.lock)文件
  • 重新安装依赖:npm install(或yarn install)
  • 清除缓存后重启项目:npx react-native start --reset-cache

内容的提问来源于stack exchange,提问作者Alpesh Trivedi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 08:03:34