我有一个 Express 项目,它在生成图形的单独文件中包含客户端 JavaScript。我正在尝试将变量从快速路由传递到此 javascript 文件,以便可以绘制图表。 我已尝试下面的代码,但出现以下错误。
Error: Cannot find module 'js'
app.get('/users', function(req, res) {
res.render(path.join(__dirname, '../views/js/users_chart.js'), {
'users': users
});
});
最佳答案
我认为查看 res.render 的 Express 文档会对您有所帮助。和 serving static files
您无法渲染 JS 文件。
看来您想使用
提供静态user_chart.js
服务
/* server.js */
app.set('view engine', 'ejs');
app.register('.html', require('ejs'));
// serve your js statically
app.use('/js', path.join(__dirname, '../views/js/users_chart.js')
app.get('/users', function(req, res) {
// pass variable to html page
res.render('users.html', {
'users': users
});
});
// in users.html
<script type="text/javascript" src="/js/users_chart.js">
This post可能也有帮助
关于javascript - Express,如何将变量从路由传递到客户端的JS文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39001598/