[英]Node static js file isn't refreshing
我正在尝试构建我的第一个节点应用程序,但是javascript文件有问题,但css却没有,所以我很困惑。 这是我的app.js:
var express = require("express");
var app = express();
app.set("view engine", "ejs");
app.use(express.static(__dirname + '/public'));
在添加第4行之前,我无法加载我的js文件,在chrome控制台中看到的“已连接”是我的js文件。 我遇到的问题是,自从添加第4行以来,express.static我的js文件没有更改,并且我在文件中添加的所有内容均未显示在chrome资源标签中。 但是奇怪的是,我的css文件可以正常工作,所以我有些困惑。
我正在尝试链接到js文件,例如:
<script src="javascripts/main.js"></script>
我不太确定为什么它不能正常工作,我尝试重新启动服务器,然后安装了nodemon,但该服务器也无法正常工作。 我的文件夹结构是
app.js
public
stylesheets
main.css
javascripts
main.js
我查了一下这个问题,只发现人们没有连接到静态文件,一旦连接就没有显示任何保存的更改
尝试使用绝对路径以确保正确加载静态资产。 使用相对路径(例如javascripts/main.js
)可能会出现问题,因为浏览器将它们转换为绝对路径的方式(考虑了完整的url,包括任何嵌套的路径)。
因此,例如,如果您设置了一条路由/foo/bar
,并且正在使用相对路径,那么当您在浏览器中访问/foo/bar
,浏览器将尝试访问/foo/bar/javascripts/main.js
。
像webpack这样的库已经解决了您面临的问题。 它会热装。 无论您对Web应用程序所做的更改是什么,都将被加载到客户端,并且将对文件进行修补以更新更改,而无需重新启动服务器。 您将在浏览器中运行更新的脚本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.