世博会:找不到模块LogReporter

时间:2018-03-07 11:52:23

标签: react-native expo

我创建了一个React Native Project,我试图在Expo XDE中打开该项目。它会引发以下错误:

  

npm install

首先,我通过克隆KitchenSink项目创建了一个React Native项目。 链接:

NativeBase-KitchenSink

当我通过在项目根目录中发出一系列命令来启动项目时:

expo start然后{ "name": "NativebaseKitchenSink", "displayName": "NativebaseKitchenSink" }

我看到app.json也不合适,如下所示:

expo start

发出app.json react-native后报告在当前目录中找不到{ "expo": { "name": "AwesomeProject", "description": "A Kitchen Sink project.", "slug": "AwesomeProject", "privacy": "public", "sdkVersion": "30.0.0", "platforms": [ "ios", "android" ], "ios": { "supportsTablet": true }, "android": { "package": "com.abhsax.first" }, "version": "1.0.0", "orientation": "portrait", "icon": "./assets/logo.png", "splash": { "image": "./assets/splashscreen.png", "resizeMode": "contain", "backgroundColor": "#ffffff" }, "updates": { "fallbackToCacheTimeout": 0 }, "assetBundlePatterns": [ "**/*" ] } }

  

[17:05:08]开始项目   D:\ Projects \ ReactNativeProjects \ AwesomeProject [17:05:10]错误:   缺少app.json。见https://docs.expo.io/ [17:05:10]无法启动   项目。请修复错误并重新启动项目。 [17时05分10秒]   错误:无法启动项目。请修复错误并重新启动   项目。       在C:\ xdl@51.4.0 \ src \ Project.js:1565:11       在Generator.next()       在步骤(C:\ Users \ hp \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ xdl \ build \ Project.js:2033:191)       在C:\ Users \ hp \ AppData \ Roaming \ npm \ node_modules \ expo-cli \ node_modules \ xdl \ build \ Project.js:2033:361       at process._tickCallback(internal / process / next_tick.js:68:7)

我将app.json更改为:

npm install

当我再次发出expo start 时,项目中有一些更新。然后我发出了:

import tkinter
import youtube_dl

ydl_opts = {
    'nocheckcertificate:': True
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl:
    ydl.download(['https://www.youtube.com/watch?v=C-u5WLJ9Yk4'])

print('done')

出现此错误:

  

(node:2044)UnhandledPromiseRejectionWarning:错误:无法找到   模   ' d:\项目\ ReactNativeProjects \ AwesomeProject \ node_modules \博览会\工具\ LogReporter'

为什么我会收到此错误,我该如何解决?

5 个答案:

答案 0 :(得分:8)

检查package.json是否包含所有必需的依赖项,并在项目的主目录中运行npm install

如果缺少包裹,可以用

添加
npm install <package_name> --save

如果您使用纱线运行:

yarn add expo

答案 1 :(得分:6)

我做了:

yarn add expo

它对我有用=)

答案 2 :(得分:5)

查看文档:

introducing-button-yarn-and-a-public-roadmap

npm-vs-yarn-in-react-native

这些文件说,由于使用Yarn配置了项目,因此必须遵循Yarn的方式。 [Note: There is a file yarn.lock inside the root directory of the project, you have posted]

因此,请按照文档中的说明处理此类项目。

请参见How do I create a React Native project using Yarn?,使用react-native实际创建一个Yarn项目。

在使用node_modules添加npm install之前,请确保删除react native CLI文件夹并发出命令yarn。您必须从项目根目录中删除package-lock.json。这将防止混合使用不同的程序包管理器:npmyarn

相反,最好不要使用npm,并且要生成node_modules,只需发出命令:

yarn

最后一个链接建议使用yarn安装所需的每个软件包,而不要使用任何其他软件包管理器:

yarn global add react-native-cli

添加本机反应

yarn add react-native

添加缺少的软件包:

yarn add react-base --save

并使用yarn安装expo:

yarn add expo

安装expo-cli

yarn add expo-cli

可能没有Expo也可以做。只需关注react-nativeyarn

生成androidios文件夹:

react-native eject

开始纱线:

yarn start

运行您选择的构建,并确保已安装SDK。

react-native run-android

另请参阅:Uncaught TypeError: Cannot read property 'forEach' of undefined, on a KitchenSink demo

快乐编码:-)

答案 3 :(得分:1)

安装Expo模块

npm install --save

npm install expo --save

答案 4 :(得分:-1)

使用npm install -g expo-cli@2.4.3回滚