最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

nodejs无法看到安装的mysql模块

运维笔记admin16浏览0评论

nodejs无法看到安装的mysql模块

nodejs无法看到安装的mysql模块

我正在尝试使用npm为nodejs安装mysql模块。我正在使用windows子系统来执行此操作。我已成功安装使用:

sudo npm install -g mysql

我的控制台返回:

+ [email protected]
added 11 packages from 15 contributors in 5.779s

但是,使用以下方法导入模块时:

const mysql = require("mysql"); 

我收到错误:

module.js:550
    throw err;
    ^

Error: Cannot find module 'mysql'
    at Function.Module._resolveFilename (module.js:548:15)
    at Function.Module._load (module.js:475:25)
    at Module.require (module.js:597:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (/mnt/c/Users/alesi/Documents/coding/Web/Portfolio/src/servers/server.js:7:15)
    at Module._compile (module.js:653:30)
    at Object.Module._extensions..js (module.js:664:10)
    at Module.load (module.js:566:32)
    at tryModuleLoad (module.js:506:12)
    at Function.Module._load (module.js:498:3)

其他模块如querystring和nodemailer工作正常。有任何想法吗?

回答如下:

在全局安装软件包时,软件包通常安装在windows上的%USERPROFILE%\AppData\Roaming\npm\node_module或unix系统中的/usr/local/lib/node_modules中。见this帖子。

现在在你的项目中,当你require()的东西,它正在寻找当前目录的node_modules文件夹。因为您全局安装了包,所以它在项目中不存在。

运行此命令会将软件包下载到项目的node_modules文件夹,而不是全局node_modules--save也会把它写成对package.json的依赖

npm install --save mysql

根据我的经验,全局包似乎用于CLI或从命令提示符运行脚本,而不是用于代码。

发布评论

评论列表(0)

  1. 暂无评论