尝试执行 react-native 应用程序时出现“错误无法读取未定义的属性‘拆分’”
Posted
技术标签:
【中文标题】尝试执行 react-native 应用程序时出现“错误无法读取未定义的属性‘拆分’”【英文标题】:"error Cannot read property 'split' of undefined" in trying to execute react-native app 【发布时间】:2021-10-03 10:24:18 【问题描述】:昨天我可以运行一个 react-native 应用程序而没有任何重大问题,但今天我尝试再次运行它。我运行“npm start”来启动metro,然后我尝试运行“npx react-native run-android”然后它开始返回以下错误:
npm ERR! Cannot read property 'split' of undefined
npm ERR! A complete log of this run can be found in:
npm ERR! /home/brunno/.npm/_logs/2021-07-27T15_00_53_791Z-debug.log
当我打开日志试图解决它时,它并没有为我清除任何东西。
21 verbose stack TypeError: Cannot read property 'split' of undefined
21 verbose stack at Object.<anonymous> (/usr/share/nodejs/npm/lib/utils/path.js:4:23)
21 verbose stack at Module._compile (internal/modules/cjs/loader.js:999:30)
21 verbose stack at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
21 verbose stack at Module.load (internal/modules/cjs/loader.js:863:32)
21 verbose stack at Function.Module._load (internal/modules/cjs/loader.js:708:14)
21 verbose stack at Module.require (internal/modules/cjs/loader.js:887:19)
21 verbose stack at require (internal/modules/cjs/helpers.js:74:18)
21 verbose stack at Object.<anonymous> (/usr/share/nodejs/npm/lib/exec.js:64:14)
21 verbose stack at Module._compile (internal/modules/cjs/loader.js:999:30)
21 verbose stack at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
22 verbose cwd /home/brunno/Documentos/ReactNative/exercicios
23 verbose Linux 5.11.0-25-generic
24 verbose argv "/usr/bin/node" "/usr/share/nodejs/npm/bin/npm-cli.js" "exec" "--" "react-native" "run-android"
25 verbose node v12.21.0
26 verbose npm v7.5.2
27 error Cannot read property 'split' of undefined
28 verbose exit 1
【问题讨论】:
请提供一些细节。 你能把你使用split
的代码贴出来吗?由于某种原因,您使用它的对象是undefined
。
【参考方案1】:
问题是我没有在任何地方使用拆分是一个全新的代码, 并且当我尝试通过终端启动应用程序时发生错误,当我通过 Android Studio 启动它时一切正常,没有任何问题
【讨论】:
【参考方案2】:我自己也遇到过这种情况。问题是npm
中的这段代码:
const PATH = (
process.env.PATH || process.env.Path || process.env.path
).split(delimiter)
这意味着如果没有名为PATH
、Path
或path
的环境变量,那么它将尝试拆分未定义的变量。最简单的解决方案可能是确保定义了 PATH
环境变量,即使它只是设置为空字符串。
我遇到这种情况的原因是我在从 python 调用 npx 时(通过subprocess
)设置了一些环境变量,而我没有在这组变量中包含PATH
。
【讨论】:
以上是关于尝试执行 react-native 应用程序时出现“错误无法读取未定义的属性‘拆分’”的主要内容,如果未能解决你的问题,请参考以下文章
React-native:发送日志时出现问题-console.error
使用 react-native run-android 运行时出现 React-Native 错误
在 Exponent react-native 框架中使用 ShoutemUI/TextInput 组件时出现字体加载错误