问题标签 [metro-bundler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何将嵌套的 JSON 数据导入 JavaScript
我有一个名为 ui-components.json 的 JSON 文件,其中包含移动应用程序中使用的用户界面组件的配置数据。以下是文件中的数据示例:
目前,正在有选择地导入此数据,如下所示 -
虽然这可行,但导入的数据比必要的多得多(比上面的示例中显示的要多)。导入配置数据的文件只需要color
,所以我尝试了下面的变体,但编辑器显示错误,果然,当尝试运行应用程序时,它抛出了错误。
是否有可能做到这一点?如果是这样,正确的语法是什么?如果不是,为什么不呢?
javascript - Metro Bundler 没有编译 React Native App
我对 React Native 完全陌生。我从过去两周开始学习 React Native,一切都很好并且工作正常。但是今天我在编译我的应用程序时遇到了问题。正如您在图片中看到的那样,它正在显示编译但它不会编译我等了一个小时但没有任何改变。 Metro 捆绑图像
javascript - Metro extraNodeModules 不起作用 - 错误:无法解析模块
我有一个现有的 React 本机应用程序。我想创建另一个并在它们之间共享一些代码。我利用 MetroextraNodeModules
将共享代码导入到任一应用程序中。在任一应用程序中,我希望能够执行以下操作:
不幸的是,当我的开发设备上加载应用程序包时,它失败了:
文件夹结构(shared
文件夹存在 - 这是来自 的输出tree
):
我的地铁配置:
react-native - 未连接任何应用程序。向所有 React Native 应用程序发送“重新加载”失败。确保您的应用程序正在模拟器或通过 USB 连接的手机上运行
React Native 应用在真机上调试存在一些问题;
我的地铁捆绑器控制台发出警告:
警告并导致真正的 IOS 设备连接问题。
当我尝试从 Chrome React Native Debugger 重新加载我的 react native 应用程序时,它给出了上述警告,我无法在 Chrome 上调试我的代码
反应原生:0.62.2,
IOS:13.6
它发生在真实设备连接上。当我使用IOS模拟器时,没有问题。
注意:我的手机和 macbook 在同一个 wi-fi 网络上。
所以问题与不同的 wi-fi 网络使用无关。
react-native - 如何在 expo 项目中导入外部打字稿文件
有没有办法从 expo 项目主文件夹之外的文件夹中转换和支持导入?
我希望从共享文件夹中导入一些其他文件。
这是我的设置和问题:
根文件夹
有 3 个子文件夹, no package.json
, no tsconfig.json
,只有那些:
- /server --> 一个 nodejs 的 rest api
- /mobile --> 一个展览项目
- /shared --> 一个包含许多常见打字稿文件的文件夹
移动文件夹
这个有使用typescript生成的 expo 项目。项目工作正常,直到我从./shared
.
从 expo 文件夹中导入文件./shared
不起作用:(正在npm run start
运行./mobile fodler
)
我得到的错误是这样的:
网站:
我的假设是找到该文件但未触发 babel/typescript 转换。我不确定在哪里可以指定这个方面。
我mobile/babel.config.js
的是世博会生成的标准:
没有mobile/metro.config.js
。
我查看了文档,在 expo 和 metro 配置之间迷路了。
react-native - Metro bundler 错误当我运行 expo start
我正在做一个 react native expo 项目。在我更新我的 MacBook 之前,我一直在运行 expo start 没有问题。现在,我面临这个错误:
无法从 Metro 捆绑器获取状态。连接 ECONNREFUSED 127.0.0.1:19003 连接到 Metro 捆绑器失败。
我的博览会诊断如下:
Expo CLI 3.22.3 环境信息:系统:操作系统:macOS 10.15.5 Shell:5.7.1 - /bin/zsh 二进制文件:节点:12.18.3 - /usr/local/bin/node npm:6.14.6 - /usr /local/bin/npm IDE:Android Studio:3.6 AI-192.7142.36.36.6200805 Xcode:11.6/11E708 - /usr/bin/xcodebuild npmPackages:expo:^38.0.0 => 38.0.8 反应:16.11.0 = > 16.11.0 react-dom: 16.11.0 => 16.11.0 react-native: https://github.com/expo/react-native/archive/sdk-38.0.2.tar.gz => 0.62.2 react-native-web: ~0.11.7 => 0.11.7 npmGlobalPackages: expo-cli: 3.22.3
react-native - 无法加载脚本。确保您正在运行 Metro 服务器或您的捆绑包“index.android.bundle”已正确打包以供发布
我用 react-native init 创建了一个新项目。我正在使用带有以下内容的 react-native:“react”:“16.13.1”,“react-native”:“0.63.2”。
当我尝试使用react-native run-android
命令运行该应用程序时,它显示在终端中构建成功,但我的 Metro 捆绑器中没有出现任何内容(我正在附加它的图像),并且我的模拟器显示“无法加载脚本”问题。
无法加载脚本
如果我按“R”在 node(bundler) 中重新加载应用程序,它会说没有连接到它的设备,但我的模拟器正在运行。我在个人设备上也遇到了同样的问题。 地铁捆绑器未运行
我还尝试通过在其中创建资产文件夹android/app/src/main/assets
并运行以下命令
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
:
仅当应用程序显示在模拟器上并且我在App.js文件中进行更改并保存它时,模拟器中没有任何更改。
如果我重新加载错误“无法连接到开发服务器”弹出。 无法连接到开发服务器 甚至尝试了 adb reverse 并将“dev”选项更改为本地主机和端口 8081,但它没有用。(如果有任何我应该尝试上述步骤的特定路径,请提及)。
我做错了什么?
任何人都可以帮忙吗?
PS:我使用的是 Windows 10 机器。
谢谢你。
expo - 世博会运行时显示的二维码
每当我使用 npm start(使用 expo btw)运行我的 react-native 应用程序时,我都会获得一个 QR 码,以便能够使用 expo 应用程序在我的手机上运行该应用程序。此代码也可以在浏览器博览会开发工具上使用。我正在使用可视代码并安装了一个名为“更漂亮”的扩展。之后,每次我运行我的应用程序,终端输出都不一样,二维码不再出现,甚至在浏览器中也没有,它只是永远编译。
之前: https ://imgur.com/a/0JE5LF7
之后: https ://imgur.com/a/XdQlIVc
它现在运行在“webpack 模式”而不是像以前那样使用“metro”,我是世博会和应用程序开发的新手,所以不知道如何改回来。
android - 类型错误:cb.apply 不是函数
我正在尝试运行使用 Metro Bundler 的现有 React Native 项目。我的操作系统是 Ubuntu 20.04,我尝试在物理 Android 设备和使用 Android Studio 创建的 Android 模拟器上运行该应用程序。
我已经成功克隆了项目的 repo,安装了它的依赖项(yarn
),构建了应用程序(react-native run-android
),并在我的手机和模拟器上打开了应用程序。但是,运行react-native start
错误说TypeError: cb.apply is not a function
。这是我在运行时得到的完整信息和错误react-native start
:
安装graceful-fs
(正如另一篇关于同一问题的帖子所建议的那样)并没有改变任何东西,我仍然得到同样的错误。
这里可能是什么问题?提前致谢。
javascript - 在现有的 android 应用程序中运行 RN View 会出现错误无法加载脚本
我已将现有的 android 应用程序集成到反应本机应用程序中。当我使用 react native cli 运行时,它会打开应用程序,单击按钮打开 RN 视图后会出现错误Unable to load script Make sure you are either running a Metro server or that your bundle 'index.android.bundle' is packaged correctly for release
(参考图片)
如果我使用命令手动创建 index.android.js
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
并运行该应用程序,它工作正常。
我也可以在这个 url 上看到 bundle
http://localhost:8081/index.bundle?platform=android&dev=true&minify=false
知道我缺少什么吗?
我在模拟器中运行应用程序,而不是飞行模式。
Bundler 像这样打开,但是在单击 RR 时,它说No apps connected
(参考图片)