nodejssendfilehtml页面

nodejssendfilehtml页面,html,node.js,Html,Node.js,我有一段代码,允许我从特定的文件夹打开一个HTML页面,如果我使用server.js打开该HTML页面,那么它将生成包含所有css和jquery文件的页面,但是如果我尝试将get语句移动到routes文件夹,那么页面将生成,但没有任何css和jquery文件,我不知道为什么 下面是我在server.js中为生成HTML页面所做的工作,这些工作非常有效: const folderPath = __dirname + '/public/AppTemplate/src' app.use(express

我有一段代码,允许我从特定的文件夹打开一个HTML页面,如果我使用
server.js
打开该HTML页面,那么它将生成包含所有css和jquery文件的页面,但是如果我尝试将get语句移动到routes文件夹,那么页面将生成,但没有任何css和jquery文件,我不知道为什么

下面是我在server.js中为生成HTML页面所做的工作,这些工作非常有效:

const folderPath = __dirname + '/public/AppTemplate/src'
app.use(express.static(folderPath))
app.use(bodyParser.urlencoded({ extended: true }));
app.get('/', function (req, res) {
  res.sendFile(path.join(__dirname + '/public/AppTemplate/src/index.html'));
});
但我现在尝试的是从routes.js获取html页面:

步骤1: 我在server.js中实现了这个语句

app.use('/users', require('./backend/routes/profile.routes.js'));
步骤2:我在routes.js中尝试了这个语句,只做了简单的修改:D:

router.get('/profile', function (req, res) {
  const dirname = __dirname;
  console.log(dirname)
  const newpath = dirname.length - 14;
  const newP = dirname.substring(newpath, dirname.lastIndexOf("/"));
  console.log(newP);
res.sendFile(path.join(newP+ '/public/AppTemplate/src/02-ProfilePage.html'));
});
步骤2正在工作,但我无法获取位于中的所有关联文件(jquery css…)

/public/AppTemplate/src
输出的图像如下所示:

希望我什么都提到了,
非常感谢,

这是因为
02 ProfilePage.html
中的内容路径不正确

检查脚本标记中的路径。如果有斜杠,则表示斜杠已经位于指定的
/public/AppTemplate/src

例如,
/js/file.js
实际上将指向
/public/AppTemplate/src/js/file.js

也许可以尝试在脚本标记中的路径前面添加一个
/

例如:

/css/x/y/z/
而不是
css/x/y/z

您必须将
/
附加到脚本/链接标记中的所有路由,才能成功加载本地资源


如果可能的话,您可以使用代码编辑器或IDE中的“查找和替换”功能来加快过程。

您也可以在
02 ProfilePage.html1
?@AvivLo中向我们展示代码,这是css和Jquery的html页面路径,但为什么索引html工作?当你说
Index.html
工作时,你指的是html部分还是脚本部分?那么你所有css和js文件的路径是什么?所有资源都在
/public/AppTemplate/src
下吗?是的,它们都在
/public/AppTemplate/src
下查看图像,但我注意到网络控制台中有一个错误查看此图像