我想使用MySQL数据库。我用命令npm i mysql
安装了MySQL。为了使用它,我写道:
var mysql = require('mysql');
但是当我运行程序时,它会显示 ReferenceError:require is not defined 错误。
我在script.ejs文件中在脚本标记中写了这行。
答案 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文件中。