web-dev-qa-db-ja.com

反応ネイティブでの「不明な名前付きモジュール」エラー

私はreactnativeを使用してアプリを作成していますが、一部のインポートではタイトルからエラーが発生します:"Unknown named module"。これは、react-native-material-designreact-native-db-modelsの2つのパッケージで発生するため、問題はモジュールではなく、セットアップにあると思われます。

パッケージをreact-native linkにリンクし、react-native run-Androidを使用してアプリを再パッケージ化しようとしましたが、いずれもこの問題を解決しませんでした。 githubでインポートの例を調べましたが、動作するコードをコピーしても同じエラーが発生します。

ヤーンとnpmのどちらかを使ってモジュールをインストールしてみました。 ../../react-native-db-modelsのような相対パスで試しました。動作しませんでした!

これが私がモジュールをインポートする方法です:

import RNDBModel from 'react-native-db-models';

import { List, Button, Toolbar, } from 'react-native-material-design';

これらは私のプロジェクトの依存関係です:

"dependencies": {
  "react": "15.4.1",
  "react-native": "0.39.2",
  "react-native-db-models": "^0.1.3",
  "react-native-material-design": "^0.3.7",
  "react-native-md-textinput": "^2.0.4",
  "react-native-vector-icons": "0.8.5",
  "react-redux": "^5.0.1",
  "redux": "^3.6.0",
  "redux-logger": "^2.7.4"
},

React/React Nativeがこれらのモジュールと互換性がない場合、どのバージョンを使用すべきかをどのように判断しますか?たぶん、エラーはインポートとは何の関係もなく、私のプロジェクトと関係がありますか?

11
Marco Lavagnino

react-native startによって起動されたパッケージサーバーには、ノードモジュールのキャッシュがあるようです。サーバーを停止して再起動すると、問題が解決しました。

モジュールをインストールした後は、必ず反応サーバーを再起動してください。

16
Marco Lavagnino

パッケージの repository を簡単にチェックすると、「リスト」モジュールが使用できなくなっていることがわかります。これが リンク 削除された理由です。

したがって、インポートから「リスト」モジュールを削除する必要があります。

import { Button, Toolbar, } from 'react-native-material-design';
1
max23_