Node JS:ReferenceError:require未定义

时间:2017-04-21 15:33:53

标签: javascript node.js

我想使用MySQL数据库。我用命令npm i mysql安装了MySQL。为了使用它,我写道:

var mysql = require('mysql');

但是当我运行程序时,它会显示 ReferenceError:require is not defined 错误。

我在script.ejs文件中在脚本标记中写了这行。

5 个答案:

答案 0 :(得分:4)

Home.ejs不是要写入此行的approriate文件。 ejs文件不会包含那么多逻辑(除了条件和循环在你的dom中的某个元素)。 基本上你想要做的是阳极的脚本文件,它将连接到mysql,处理请求并用你的数据提供你的ejs文件。

使用快递,您的节点文件中会出现类似的内容:

app.get("/home",(req,res)=>{ res.render("home.ejs", {data : data})(数据来自您的数据库

答案 1 :(得分:2)

默认情况下,require()不是客户端javascript中的有效函数。我建议您查看require.js,因为这会扩展客户端以为您提供该功能。

答案 2 :(得分:2)

在进入ejs模板之前,您需要进行mysql处理。现在,您正在尝试在模板中使用require,该模板正在浏览器上呈现。如果不使用像requirejs这样的模块加载器,您将无法做到这一点。

答案 3 :(得分:2)

缺省情况下,

require()是服务器端的NodeJS功能。你可以使用像Abhilash这样的require.js。在浏览器中安装mysql是不好的做法。您的用户名,密码和主机将向全世界公开。

答案 4 :(得分:0)

浏览器没有customerParams := &stripe.CustomerParams{ Desc: "Customer for xyz.com", Email: "test@email.com", Source: "test_visa" } 个模块的API。此外,这是您在nodejs应用程序(在后端而不是前端)中执行的操作,通常在.js文件中。