我正在使用react-native
框架来开发我的Android应用程序。我想使用react-native-material-design
库来创建具有更多功能的Toolbar
。
我在当前目录中安装了这个库,我的项目在命令下使用: -
E:\>npm i react-native-material-design -g --save
C:\Users\ch-e00925\AppData\Roaming\npm
`-- react-native-material-design@0.3.7
+-- react-native-material-design-styles@0.2.6 (git+https://github.com/react-n
ative-material-design/react-native-material-design-styles.git#bdc029c1a1c83ff563
d10868be38b8aed1e9989b)
`-- react-native-vector-icons@2.1.0
+-- lodash@4.17.4
`-- yargs@4.8.1
+-- cliui@3.2.0
| +-- strip-ansi@3.0.1
| | `-- ansi-regex@2.1.1
| `-- wrap-ansi@2.1.0
+-- decamelize@1.2.0
+-- get-caller-file@1.0.2
+-- lodash.assign@4.2.0
+-- os-locale@1.4.0
| `-- lcid@1.0.0
| `-- invert-kv@1.0.0
+-- read-pkg-up@1.0.1
| +-- find-up@1.1.2
| | +-- path-exists@2.1.0
| | `-- pinkie-promise@2.0.1
| | `-- pinkie@2.0.4
| `-- read-pkg@1.1.0
| +-- load-json-file@1.1.0
| | +-- graceful-fs@4.1.11
| | +-- parse-json@2.2.0
| | | `-- error-ex@1.3.0
| | | `-- is-arrayish@0.2.1
| | +-- pify@2.3.0
| | `-- strip-bom@2.0.0
| | `-- is-utf8@0.2.1
| +-- normalize-package-data@2.3.5
| | +-- hosted-git-info@2.1.5
| | +-- is-builtin-module@1.0.0
| | | `-- builtin-modules@1.1.1
| | +-- semver@5.3.0
| | `-- validate-npm-package-license@3.0.1
| | +-- spdx-correct@1.0.2
| | | `-- spdx-license-ids@1.2.2
| | `-- spdx-expression-parse@1.0.4
| `-- path-type@1.1.0
+-- require-directory@2.1.1
+-- require-main-filename@1.0.1
+-- set-blocking@2.0.0
+-- string-width@1.0.2
| +-- code-point-at@1.1.0
| `-- is-fullwidth-code-point@1.0.0
| `-- number-is-nan@1.0.1
+-- which-module@1.0.0
+-- window-size@0.2.0
+-- y18n@3.2.1
`-- yargs-parser@2.4.1
`-- camelcase@3.0.0
E:\>
在此之后,我在运行应用程序时遇到一个问题,可能是库未成功安装。
E:\Myntra>react-native start
Scanning 557 folders for symlinks in E:\Myntra\node_modules (114ms)
┌────────────────────────────────────────────────────────────────────────────┐
│ Running packager on port 8081. │
│ │
│ Keep this packager running while developing on any JS projects. Feel │
│ free to close this tab and run your own packager instance if you │
│ prefer. │
│ │
│ https://github.com/facebook/react-native │
│ │
└────────────────────────────────────────────────────────────────────────────┘
Looking for JS files in
E:\Myntra
[01/23/2017, 13:36:07] <START> Initializing Packager
[01/23/2017, 13:36:08] HMR Server listening on /hot
React packager ready.
[01/23/2017, 13:36:12] <START> Requesting bundle
bundle_url: /index.android.bundle?platform=androi
d&dev=true&hot=true&minify=false
[01/23/2017, 13:36:40] <START> Building Haste Map
[01/23/2017, 13:36:40] <END> Building Haste Map (141ms)
[01/23/2017, 13:36:40] <END> Initializing Packager (33314ms)
[01/23/2017, 13:36:40] <START> Transforming files
transformed 584/607 (96%)(node:6316) UnhandledPromiseRejectionWarning: Unhandled
promise rejection (rejection id: 605): UnableToResolveError: Unable to resolve
module react-native-material-design-styles from E:\Myntra\node_modules\react-nat
ive-material-design\lib\config.js: Module does not exist in the module map or in
these directories:
E:\Myntra\node_modules\react-native-material-design\node_modules
, E:\Myntra\node_modules
This might be related to https://github.com/facebook/react-native/issues/4968
To resolve try the following:
1. Clear watchman watches: `watchman watch-del-all`.
2. Delete the `node_modules` folder: `rm -rf node_modules && npm install`.
3. Reset packager cache: `rm -fr $TMPDIR/react-*` or `npm start -- --reset-cac
he`.
[01/23/2017, 13:54:09] <START> Requesting bundle
bundle_url: /index.android.bundle?platform=androi
d&dev=true&hot=true&minify=false
PS:我在Windows 7机器上,找不到执行命令的方法。我见过这个The development server returned response error code: 500 in react-native,但它没有帮助我。
任何人都可以帮我解决这个问题。提前谢谢。
答案 0 :(得分:9)
babel-preset-react-native
让这个麻烦。在项目根目录中运行以下订单:
$ yarn remove babel-preset-react-native
$ yarn add babel-preset-react-native@2.1.0
答案 1 :(得分:5)
尝试在本地而不是全局安装react-native-material-design
。
看起来反应本机材料设计取决于反应本机材料设计风格,它们不会被React Native的捆绑包打包,因为它的父级是全局模块。
答案 2 :(得分:4)
如果您未指定 .js
文件的正确路径, 有时会出现此错误
而不是输入正确路径:
var WeatherProject = require('./Main/WeatherProject');
输入错误的路径(大小写,拼写错误,特殊符号):
var WeatherProject = require('./WeatherProject');
答案 3 :(得分:4)
我遇到了同样的问题,我的一个节点模块配置不正确(反应式导航),所以我只是使用
在本地重新安装了它。npm install react-navigation --save
答案 4 :(得分:3)
我在端口8081上遇到了同样的问题,将其更改为8082。因为这里的其他服务已在使用它,这对我来说是一个步骤
首先运行您的软件包服务器: 引用
react-native start --port 8082
打开另一个命令提示符,照常启动Android应用程序:
react-native run-android
完成后,现在重写adb隧道的tcp端口:
adb reverse tcp:8081 tcp:8082
查看adb tcp隧道列表:
adb reverse --list
现在,您现在应该看到类似以下的消息:
(reverse) tcp:8081 tcp:8082
检查您的应用程序,它将运行.........!
答案 5 :(得分:2)
出现此错误的原因之一是因为我两次导入了“ react-native”库。
import { View, Text, ActivityIndicator } from "react-native";
import { View, Text, ActivityIndicator, TouchableOpacity, StyleSheet } from "react-native";
我不知道这是否真的会导致这个问题,但是删除多余的导入行对我来说解决了这个问题。
答案 6 :(得分:2)
首先执行,以获取版本号:
C:\WINDOWS\system32>react-native -v react-native-cli
2.0.1 react-native:0.56.0
然后我卸载了react-native:
C:\WINDOWS\system32>npm uninstall -g react-native-cli
在3.999秒内删除了41个包
然后我安装了react-native:
npm install react-native@0.55.4
然后我安装了react-native-cli:
npm install -g react-native-cli@1.2.0
然后使用此安装来创建一个本机反应项目:
react-native init --version="0.55.4" myprojectname
答案 7 :(得分:2)
每当有人遇到此类错误,错误代码为500时。请遵循以下原因。
1)您可能在Linux系统中工作,并且必须使用终端运行应用程序并签入Android Simulator,而不是在Devices中。
2)如果您使用上面的方法,请确保您的Simulator Wife处于关闭状态,然后与Studio一起使用。
希望您会找到解决方案。
答案 8 :(得分:1)
作为React-native领域的新手,我曾经面临着这种错误的负担,而且我总是感到困惑。经过一番经验后,我意识到,当服务器尝试从不存在的地方导入某些东西时,就会发生这种情况。
因此,必须先检查要导入的内容以及该内容是否存在,
这意味着此错误不仅会在未卸载的软件包中弹出,甚至会在您导入错误的内容或从错误的位置导入时出现。
答案 9 :(得分:1)
1)您可能在Linux系统中工作,并且必须使用终端运行应用程序并签入Android Simulator,而不是在Devices中。
2)如果您使用上述工具,请确保关闭Simulator Wifi,然后再与Studio一起使用。
3)确保不要同时打开多伙伴终端或命令窗口。如果然后关闭一个
答案 10 :(得分:0)
react-native软件包--platform android --dev false --entry-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets-目标android / app / src / main / res
运行此命令:这将显示错误,例如两次关闭标签或找不到任何模块
在基于Linux的系统中,在命令前使用sudo
答案 11 :(得分:0)
适用于使用stores
或顶级组件的用户。如果删除一个,请确保没有将其导入其他任何地方。
就我而言,我删除了正在导入的顶级商店。
答案 12 :(得分:0)
如果您使用的是本机版本:56.0,则将其降级为54版本。它对我有用
答案 13 :(得分:0)
npm start —–reset-cache
react-native run-android
答案 14 :(得分:0)
可能是您导入的JavaScript文件的名称与任何React预定义库/组件相同。例如,从您创建的文件夹app / components中导入View.js.
import View from './app/components/View'
以上语句将产生错误。因此,通过将文件名更改为Interface.js
import Interface from './app/components/Interface'
现在,代码可以正常运行
答案 15 :(得分:0)
针对使用商店或顶级组件的用户。如果删除一个,请确保没有将其导入其他任何地方。
就我而言,我删除了一个正在顶层导入的商店。
答案 16 :(得分:0)
同样的错误。不同的情况。
当我将 Redux 文件夹中的 package.json 文件中的“名称”更改为小写时,发生了这个错误。
我这样做是为了修复以下错误,这是由于 npm 约定引起的,它们只允许小写 private void button1_Click(object sender, EventArgs e)
{
List<double>[] Lists = new List<double>[4];
for (int i = 0; i < 4; i++)
{
Lists[i] = new List<double>();
}
Lists[0].Add(5); // high
Lists[0].Add(10);
Lists[1].Add(0); // low
Lists[1].Add(5);
Lists[2].Add(3); // close
Lists[2].Add(8);
Lists[3].Add(2); // open
Lists[3].Add(7);
chart1.Series[0].Points.DataBindY(Lists);
}
所以为了解决这个问题我改变了
{ "message": "String does not match the pattern of \"^(?:@[a-z0-9-*~][a-z0-9-*._~]*/)?[a-z0-9-~][a-z0-9-._~]*$\".", }
{ "name": "Redux" }
然后就出现了服务器错误。我把它改回
{
"name": "redux"
}
然后它工作正常。
答案 17 :(得分:0)
通常这个错误是因为指定了文件路径。
当我给图像的 require 函数提供了错误的文件路径时,我得到了这个错误。
就我而言,就像
image: require('../assets/profile')
然后改成这样解决了我的错误,
image: require('./../assets/profile.jpg')