如何使用 npx 创建新的反应原生应用程序?
Posted
技术标签:
【中文标题】如何使用 npx 创建新的反应原生应用程序?【英文标题】:How can i create new react native App using npx? 【发布时间】:2020-04-06 04:21:57 【问题描述】:我有几个月没有使用 react-native。看起来有些事情同时发生了变化。在官方文档中,他们建议卸载react-native-cli
并改用npx react-native init
。我这样做了,但最终出现错误,因为我没有在全球范围内安装该软件包。但是,如果我全局安装react-native
,运行项目时会报错,说我应该删除全局包。
如今创建 React 应用的正确方法是什么?
【问题讨论】:
【参考方案1】:-
npm 卸载 --global react-native-cli
安装 node js(我使用 node js 版本 12.10.0 here),我不使用最新版本,因为有一个错误,我无法运行我的 react native 应用程序
安装 python2 jdk8 和 yarn
安装android studio和sdk并将ANDROID_HOME添加到环境变量中
使用
npx react-native init ProjectName
创建新项目
使用yarn react-native run-android
或yarn react-native run-ios
运行项目
@Raeygzz 如果你想使用 react-native 相关命令,在命令开头添加 yarn/npx
yarn react-native run-android
yarn react-native run-ios
或
npx react-native run-android
npx react-native run-ios
如果你想创建 apk 调试使用 在你的根项目中
cd android && gradlew assembleDebug
apk 版本 在你的根项目中
cd android && gradlew assembleRelease
使用包调试 在你的根项目中
yarn react native run-android
获取apk文件
android\app\build\outputs\apk\debug
如果我正在使用的设备没有 USB 电缆,我通常会这样做,所以我将文件复制到那里,并将其发送到云端,将其下载到设备并安装它,然后我只需摇晃手机并转到设置和设置调试服务器 例如:10.xxx.xxx:8081 然后在cmd中运行yarn start 摇动设备并选择刷新
react-native run-android 和 gradlew assembleDebug 的区别就在这里 react-native run-android Vs ./gradlew assembleDebug
【讨论】:
【参考方案2】:查看他们的官方文档npx
【讨论】:
【参考方案3】:感谢@Gus Nando 提供详细信息...如果我想使用 npx 为 android 进行调试构建,那么我应该遵循什么。并且,如果为 android 和 ios 平台创建调试和生产构建的方式有任何变化或变化。
任何与 npx 相关的信息都会有很大帮助。提前致谢
【讨论】:
【参考方案4】:您需要做的第一件事是删除 react-native-cli:
npm uninstall react-native-cli
或 npm uninstall --global react-native-cli
然后,如果您安装了 NodeJS 10 LTS 或更高版本,请安装 Expo CLI:
npm install -g expo-cli
你现在应该可以像这样使用 expo-cli 制作新的 react native 应用了:
expo init ProjectName
Expo 是一个工具,可让您在手机上设置开发环境。有关详细信息,请参阅此处的文档:https://expo.io/
这是开发、测试和部署应用程序的最有效和最快的方法
【讨论】:
谢谢,如果我想在没有 expo-cli 的情况下创建它?我曾经使用 react-native-cli 创建我的应用程序。 为什么要这样做?这仍然是在手机上设置开发环境的最佳方式。你仍然可以使用 react-native-cli,之前卸载它,它应该可以工作。【参考方案5】:尝试使用npx react-native init projectName
然后使用cd projectName
将目录更改为项目
并使用react-native run-android
运行项目
【讨论】:
以上是关于如何使用 npx 创建新的反应原生应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
无法创建新的反应原生项目(react-native init Myproject)
创建反应应用程序错误:internal/modules/cjs/loader.js:311,当使用 npx 创建反应应用程序时