我在ExpressJS
项目中使用Electron
。使用Express
的路由无法按预期工作。
以下是我创建路由的方法(在主流程中):
const express = require('express')
const app2 = express()
app2.get('/requests/:_id', (req, res, next) => {
console.log('Dynamic Link WORKS!!');
hosSchemaModel.findOne({ _id: req.params._id }, function(err, request){
res.json(request)
// res.sendFile(path.join(__dirname+'../homePage.html'))
});
});
在前端我有以下内容:
<a href="/requests/{{this._doc._id}}">{{this._doc.status}}</a>
当我点击{{this._doc.status}}
时,它会让我清空白色屏幕而控制台中没有任何内容。
我是否可以就如何在ExpressJS
中实施Electron
路由提供一些指导?
答案 0 :(得分:0)
只是在黑暗中拍摄,但如果没有端口,您将无法连接。尝试将其添加到服务器文件的末尾。 'app2.port(9000)`然后尝试点击相同的URL但是有一个端口。
答案 1 :(得分:0)
Electron基本上有两个进程主进程和渲染进程,当你打印console.log时,它基本上是在主进程的控制台中打印。您必须将数据传递给渲染器进程才能在您的网页的控制台中显示。
更新 - 2
让express express听一些端口,然后从前端点击那个端口的url。
Main.js
app2.get('/requests/1234', (req, res, next) => {
console.log('Dynamic Link WORKS!!');
hosSchemaModel.findOne({ _id: req.params._id }, function(err, request){
res.json(request);
// res.sendFile(path.join(__dirname+'../homePage.html'))
});
});
app2.listen(5000, function () {
console.log('Example app listening on port 3000!');
});
<强>前端强>
<a href="localhost:5000/requests/1234">{{this._doc.status}}</a>
在此之后,它正在我的工作。
如果要以群集模式运行快速服务器,则应该分叉进程并尝试在新进程中运行快速服务器。