3

私はnode.jsが初めてで、それを学ぼうとしています。
ここでは、nodejs で mySQL データベースにアクセスしようとしています。
これを使用してモジュールをインストールしましnpm install mysqlたが、フォルダーにmysqlのフォルダーがありませんnode_modules
しかし、ターミナルからmysqlモジュールをインストールしているときにエラーは発生しません。この問題のため、プログラムで mysql モジュールを使用できず、次のようなエラーが発生しています。

module.js:340
    throw err;
          ^
Error: Cannot find module 'mysql'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/opt/lampp/htdocs/1nodeapp/mysql.js:4:12)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
4

2 に答える 2

7

多くの場合、ディレクトリで package.json を取得し、そこからインストールすると役立ちます。という名前のファイルを作成package.jsonし、次の内容を入力してみてください (引き続き作業するノード プロジェクトを作成する場合は、とにかくこれが必要になります)。

{
  "name": "PROJECT NAME",
  "version": "0.0.1",
  "author": "YOUR NAME",
  "dependencies": {
    "mysql": "2.x.x"
  }
}

これが配置されたら、実行するだけで、作成されnpm installnode_modulesフォルダーが作成され、mysql ソースが取り込まれます。package.json将来、依存関係を追加して自動的に保存したい場合は、npm install whatever --save. かなり便利!

于 2013-10-26T21:00:52.300 に答える
1

新しいモジュールをインストールしようとすると、npm はnode_modules現在の場所でディレクトリを探し、存在しない場合は親ディレクトリを探します。がどこかに存在する場合node_module、モジュールはそこにインストールされます。それはおそらくあなたの場合に起こることです。

現在のディレクトリに mysql モジュールをインストールする場合は、インストール先に空のnode_modulesディレクトリを作成するだけです。

于 2013-10-26T19:22:18.017 に答える