我正在使用angular.js,我在express.js
中这样做app.get("*", function (req, res) {
res.redirect('/#' + req.originalUrl)
})
这样浏览器将使用angular而不是express的路由。但是如何用反应路由器做到这一点?我有2个文件夹,名为服务器和客户端,服务器文件夹有express和api逻辑,而客户端文件夹只是一个反应应用程序。
答案 0 :(得分:0)
您需要将要呈现应用的HTML文件的路径放入
app.get("/",(res,res) => {
res.sendFile('put the path of the html file you are rendering your app into here');
}
这是一个使用react
的express server.js的示例var express = require('express');
var bodyParser = require('body-parser');
var logger = require('morgan');
var app = express();
var PORT = process.env.PORT || 3000;
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended:true}));
app.use(bodyParser.text());
app.use(bodyParser.json({type: 'application/vnd.api+json'}));
app.use(express.static('./public'));
app.get('/', function(req,res){
res.sendFile('./public/index.html');
});
app.listen(PORT, function(){
console.log("Listening on port: " + PORT);
});