我有一个问题,当我有一个参数后面有一个参数的直接链接。来自页面的链接工作。我正在开发一个博客应用程序。直接链接到带路由参数的URL中断AngularJS App
localhost/blog正确加载。在那个页面上,我有一个链接到本地主机/博客/文章的名称。该链接将正确加载。问题是当我刷新/博客/文章的名称页面或直接去它。它会破坏并且不加载任何东西。
Chrome中的Javascript控制台只给出了所有javascript文件的错误“Uncaught SyntaxError:Unexpected token <”。我也有这个问题,当URL有尾随/这似乎是一个角度的常见问题。不知道它是否相关。
我的路线的相关部分。
app.config(['$routeProvider','$locationProvider',
function($routeProvider,$locationProvider){
$routeProvider.
when('/',{
templateUrl: '/partials/home.html',
controller: 'HomeController as HomeCtrl'
}).
when('/home',{
templateUrl: '/partials/home.html',
controller: 'HomeController as HomeCtrl'
}).
when('/blog',{
templateUrl: '/partials/blog.html',
controller: 'BlogController as blogCtrl'
}).
when('/blog/:name', {
templateUrl: '/partials/article.html',
controller: 'ArticleController as articleCtrl'
}).
otherwise({
redirectTo: '/'
});
$locationProvider.html5Mode(true);
}]);
我使用Node/Express作为服务器和角度应用程序的api。
app.use('*', function(req, res){
res.sendFile(__dirname + '/public/index.html');
console.log('page loaded');
});
我也有/ api/contact和/ api/article的路由。
你用什么服务器来提供文件?它是否配置为启用重定向到根页面?我相信问题出在你的服务器端。我也在使用AngularUI和NodeJS Express服务器开发JS博客。您的服务器可能正在为404请求提供服务。所以你得到'意外令牌'的错误。 – 2014-10-17 02:37:14
我实际上也使用快递/节点为服务器。还有一些其他的网页可以工作。关于和联系形式,正确工作。尾随/在那些不工作虽然。 /联系作品。直接链接到/ contact /不会。我将我的快速路线代码添加到问题中。 – Matthew 2014-10-17 03:13:20