【发布时间】:2023-03-07 17:19:01
【问题描述】:
我已经阅读了有关此主题的其他几个答案,但我不完全理解这是如何工作的。我有一个角前端。我正在尝试使用 $routeProvider 将部分加载到我的页面中以用于单页应用程序。对于 $routeProvider 请求,我得到 404,我认为必须有一种方法来设置它,而无需为服务器上的每个部分声明路由。即使我现在在我的配置中只声明了一个,很快就会有更多的部分。我的 routeProvider 代码如下所示:
myApp.config(['$routeProvider',
function ($routeProvider) {
$routeProvider.
when('/register', {
templateUrl: 'partials/register',
controller: 'registerCtrl'
})
}])
但转到 localhost:3000/register 会出现 404 错误。我查看了关于 SO 的回复以及其他回复,但我无法将所有部分放在一起。
Express 4, NodeJS, AngularJS routing
上述帖子的解决方案如何
app.use('/*', function(req, res){
res.sendfile(__dirname + '/public/index.html');
});
能够找到部分并将它们返回到前端(顺便说一下,这个 sn-p 对我不起作用)。
我的应用与使用 express 生成器创建新的 express 应用没有太大区别。我有这些与路由相关的 require 和 use 语句:
var routes = require('./routes/index');
var users = require('./routes/users');
app.use('/', routes);
app.use('/users', users);
这条路线在路线/索引中为我的主页提供服务:
router.get('/', function(req, res, next) {
res.render('home');
});
【问题讨论】:
标签: angularjs node.js single-page-application