奇怪的404与角度uirouter和玉

时间:2016-06-24 13:54:07

标签: javascript angularjs node.js express angular-ui-router

我对角度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;

0 个答案:

没有答案