我对角度uirouter有一个奇怪的问题。
所以页面加载但是在控制台中我得到404用户/登录 - templateUrl无法加载,但正如我之前说的那样整个页面已加载(看起来很好)
玉文件:
layout.jade
doctype html
html
head
title= title
link(rel='stylesheet', href='/stylesheets/style.css')
link(rel='stylesheet', href='/stylesheets/bootstrap.css')
base(href='/')
body(ng-app='app')
.container(ui-view)
block content
login.jade
extends layout
block content
h1 Log In
这是我的app.js with angular config
app.config(['$stateProvider', '$urlRouterProvider', '$locationProvider', function($stateProvider, $urlRouterProvider, $locationProvider) {
$urlRouterProvider.otherwise('/');
$locationProvider.html5Mode(true);
$stateProvider
.state('home', {
url: '/',
templateUrl: '/views/index'
})
.state('login', {
url: '/users/login',
templateUrl: '/views/login'
})
}
]);
我想我应该添加一个views文件夹不在公共文件夹中(这就是为什么我认为我收到此错误) - 但为什么页面加载正常呢? (期待404错误)。
现在我已经看到,当我从users / login.jade中删除扩展布局(行)时,页面加载时没有404错误,但layout.jade文件不再加载
//编辑:
路由/ users.js
var express = require('express');
var router = express.Router();
router.get('/login', function(req, res, next) {
res.render('login', {
});
});
module.exports = router;
路由/ index.js
var express = require('express');
var router = express.Router();
router.get('/', ensureAuthenticated,function(req, res, next) {
res.render('index', { title: 'Members', username: req.user.username, id: req.user._id });
});
function ensureAuthenticated(req, res, next) {
if(req.isAuthenticated()) {
return next();
}
res.redirect('/users/login');
}
module.exports = router;