gpt4 book ai didi

javascript - ngRoute 在刷新或未知路由时不起作用

转载 作者:行者123 更新时间:2023-11-28 06:09:10 24 4
gpt4 key购买 nike

我的代码遇到问题。

刷新 localhost:portnumber/home 或/todos 或/contacts 上的页面时崩溃 ->

使用重播无法获取/home 或/todos 或/contacts。

如果我只输入 localhost:portnumber/blablabla -> 也会出现同样的问题

重播无法获取/blablabla

但是如果我只输入 localhost:portnumber ,它会使用 localhost:portnumber/home 重播,这很好!

我需要修复刷新问题和未知路径

我的 ngRoute 代码:

angular.module('contactsApp' , ['ngRoute', 'ngMessages'])
/*
ROUTE configuration
when href is... do...
*/
.config(function ($routeProvider, $locationProvider) {
$routeProvider
.when('/contacts', {
controller: 'listCtrl',
templateUrl: '/views/list.html'
})
.when('/contacts/new', {
controller: 'newCtrl',
templateUrl: '/views/new.html'
})
.when('/contact/:id', {
controller: 'editCtrl',
templateUrl: '/views/edit.html'
})
.when('/todos', {
controller: 'todoCtrl',
templateUrl: '/views/noteslist.html'
})
.when('/home', {
controller: 'homeCtrl',
templateUrl: '/views/Home.html'
})
.otherwise({redirectTo: '/home'});
$locationProvider.html5Mode(true);
});

我的index.html:

<html ng-app="contactsApp">
<head>

<base href="/">

<!-- Custom CSS -->
<link rel="stylesheet" href="src/css/style.css" type="text/css">
<link href="src/css/landing-page.css" rel="stylesheet">

<!-- Bootstrap Core CSS -->
<link href="src/css/bootstrap.min.css" rel="stylesheet">

</head>
<body>

<!-- Navigation bar -->
<nav class="navbar navbar-default navbar-fixed-top topnav" role="navigation">
<div class="container topnav example2">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="/home"><img src="images/logo_noback.jpg" alt="My Office" height="40px" width="auto"/></a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<ul class="nav navbar-nav navbar-right increse-font-17">
<li>
<a href="home">Home</a>
</li>
<li>
<a href="todos">ToDo</a>
</li>
<li>
<a href="contacts">Contacts</a>
</li>
</ul>
</div>
</div>
</nav>
<!-- End Navigation bar -->

<!-- Changed page contact -->
<div class="navbar-overlap">
<div ng-view></div>
</div>
<!-- End Changed page contact -->

<!-- Sticky footer -->
<footer class="navbar navbar-default navbar-fixed-bottom topnav footer-backcolor">
<div class="col-md-12 margin-5">
<p class="col-md-6 breadcrumb visible-md visible-lg">Copyright &copy; My Office 2016. All Rights Reserved</p>
<ul class="pull-right breadcrumb visible-md visible-lg">
<li><a href="/home">Home</a></li>
<li><a href="/todos">Todo</a></li>
<li><a href="/contacts">Contacts</a></li>
</ul>
</div>
</footer>
<!-- End Sticky footer -->

<script src="src/js/jquery.js"></script>
<script src="src/js/bootstrap.min.js"></script>
<script src="lib/angular/angular.min.js"></script>
<script src="lib/angular/angular-route.min.js"></script>
<script src="lib/angular/angular-messages.min.js"></script>
<script src="src/js/app.js"></script>
<script src="src/js/controller.js"></script>
<script src="src/js/filters.js"></script>
<script src="src/js/derectives.js"></script>
</body>

最佳答案

该错误不在您的 Angular 应用程序中:这是因为您正在使用 html 模式 进行客户端 URL 重写。

执行此操作时,您还需要重写 URL 服务器端,以避免在用户按 F5 或手动输入页面 URL 时出现 404。

这个问题是针对同样的问题,使用 NodeJS 服务器 AngularJS html5mode reloading page

关于javascript - ngRoute 在刷新或未知路由时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36575244/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com