Angular NgRoute “/” 有效,但其余的无效
Angular NgRoute "/" works but the rest don't?
我有一个在 MEAN 堆栈上运行的应用程序,除了"/"之外,我似乎无法获得任何角度路线来工作。我已经用ng-Route和ui-router尝试过这个,并且都不断发送除"/"以外的任何内容(如/contacts或/portfolio_item/4)回到"/"。
这是应用程序.js:
// using the express library in variable express
var express = require('express');
var path = require('path');
var favicon = require('serve-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
// specify that app is a new express application
var app = express();
app.use('/javascripts', express.static(__dirname + '/public/javascripts'));
app.use('/images', express.static(__dirname + '/public/images'));
app.use('/stylesheets', express.static(__dirname + '/public/stylesheets'));
app.use('/pages', express.static(__dirname + '/public/pages'));
app.use('/partials', express.static(__dirname + '/views/partials'));
app.use('/portfolio.json', express.static(__dirname + 'portfolio.json'));
app.get('*', function (req, res) {
res.sendFile(__dirname + '/public/index.html');
});
这是angularapp.js:
var myApp = angular.module('myportfolio', ['ngRoute'])
myApp.config(function($routeProvider){
$routeProvider
.when('/', {
templateUrl: '/pages/home.html',
controller: 'mainController'
})
.when('/portfolio_item/:item_number', {
templateUrl: '/pages/item.html',
controller: 'portfolioController'
})
.when('/contacts', {
templateUrl: '/pages/contact.html',
controller: 'contactController'
})
.otherwise({ redirectTo: '/' });
无论我做什么,/portfolio_item/5 和/联系人都不断向我显示/pages/home.html...对我来说很奇怪,只有索引才能工作。当我删除".when('/', {"部分时,它只会向我显示布局,根本没有从任何 URL 查看。
我正在 C9 环境中工作并运行 Node 服务器,如果这有什么不同?
如果您检查浏览器控制台,您应该会发现以下形式的错误:
未捕获的语法错误:意外的令牌<</p>
发生此错误的原因是服务器未提供静态文件。 express.static
被用作服务器上路由的中间件。
要更正此问题,您需要包含以下行:
app.use(express.static(__dirname + '/public'));
这将提供公用文件夹中的所有静态文件。
相关文章:
- jquery代码在Mozilla中有效,但在其他浏览器上无效
- 滚动在Chrome中有效,但在Firefox或IE中无效
- 文本字段显示它是有效的,即使它在ExtJS中是无效的
- JS代码在jsbin中有效,在jsfiddle或Chrome/Safari中无效
- 为什么这个按钮在IE中有效,但在Firefox中无效
- Joomla模式框弹出代码在文章中有效,但在代码中无效
- jQuery"焦点”;在一个实例中有效,但在其他实例中无效
- javascript/jQuery:在title中添加换行符——在IE9中有效,但在IE8中无效
- 数组在手动写入时有效,但从文本文件加载时无效
- parseJSON在一种情况下有效,而在另一种情况中无效
- 为什么视频不显示在有角度的灯箱中?图像有效,但视频无效;t
- MagnificPopupLightbox在RubyonRails开发中有效,但在部署到Heroku时无效
- 获取所选选项的Javascript在Webkit/FF中有效,但在IE中无效
- @媒体查询在桌面浏览器中有效,而在移动浏览器中无效
- 为什么form.submit()在使用jQuery时有效,而在使用普通JS时无效
- 转换链接在jsfiddle中有效,但在我的浏览器上无效
- 指定的侧边栏广播器无效 -- 有效的侧边栏广播器是什么样子的
- MySql数据库INSERT操作在硬盘(localhost)上有效,但在Internet上托管时无效
- Javascript——为什么一个document.getElementById()有效,而另一个无效
- AngularJS输入url无效/有效/错误