【问题标题】:Java script file not functioning in a rendered HTML file using expressJava 脚本文件在使用 express 呈现的 HTML 文件中不起作用
【发布时间】:2020-08-25 03:07:05
【问题描述】:

我的标题可能写错了,但我的问题是当我使用 ExpressJS 渲染它时,我在 HTML 文件中的功能不再起作用了。

【问题讨论】:

  • 嗨,您能否提供一个最小的可重现示例。谢谢

标签: javascript html express


【解决方案1】:

你能详细说明一下吗? 你遇到了什么错误?

也许,您在页面加载之前加载并执行脚本。 在这种情况下,您的 JavaScript 将无法从 DOM 中获取对象(因为其中没有任何内容)。

在加载脚本时尝试使用defer

【讨论】:

  • 我没有收到任何错误。假设我希望我的脚本在按下按钮时收到警报,当我正常加载 html 页面时它可以工作,但是在 expressJS 中加载它时它不会
  • HTML: 文件共享网络应用程序
  • 快递服务器:var express = require("express"); var app = express(); var logger = 要求(“摩根”); var path = require("path"); const bodyParser = require("body-parser"); var router = express.Router();变量端口 = 8888; app.use(logger("dev")); app.use('/', 路由器); app.listen(port, function(err) { if(err){ console.log("Webserver error") }else{ console.log(Webserver has been deployed and listening on port ${port}, using Express); router.get('/', (req, res) => { res.sendFile(__dirname + '/public/index.html') }) } })
  • app.js: const test = document.getElementById("test-Btn"); addEventListener('click', ()=>{console.log("pressed")})
  • 在您的 HTML 文件中:
猜你喜欢
  • 2018-05-15
  • 2011-01-13
  • 1970-01-01
  • 1970-01-01
  • 2020-06-28
  • 1970-01-01
  • 1970-01-01
  • 2019-06-26
相关资源
最近更新 更多