angularjs - AngularJS ui-router 删除 URL 上的哈希
问题描述
我是 AngularJS 和 ui-router 的新手。我想在我的 URL 中删除 hashtag(#) 并且在实现它时遇到了问题。
我已经做的是 ff 但它只显示空白页和许多错误:
$locationProvider.html5Mode(true);
在我的应用配置中添加- 添加
<base href="/" />
在我的头标签内
请看下面的截图和代码:
代码:
var app = angular.module('app', ['ui.router']);
app.config(['$locationProvider', '$stateProvider', '$urlRouterProvider', function($locationProvider, $stateProvider, $urlRouterProvider) {
$urlRouterProvider
.otherwise('/home');
$stateProvider
.state('home',{
url: '/home',
templateUrl: 'views/home.html'
})
.state('about', {
url:'/about',
templateUrl: 'views/about.html'
});
$locationProvider.html5Mode(true);
}]);
<!DOCTYPE html>
<html lang="en" ng-app="app" ng-controller="mainController">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" type="image/png" href="{{ favicon }}">
<title>JKG</title>
<!-- bootstrap -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<!-- angularjs -->
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/1.0.19/angular-ui-router.min.js"></script>
<!-- main links -->
<link rel="stylesheet" type="text/css" href="sass/main.css">
<script src="js/app.js"></script>
<script src="js/controller/mainController.js"></script>
<base href="/" />
</head>
<body>
<!--MAIN_CONTENT-->
<main ui-view></main>
</body>
</html>
有什么我错过的吗?有人可以帮我吗?先感谢您。
解决方案
根据您使用的服务器,您可能需要为应用程序编写 htacess 规则
推荐阅读
- javascript - 将字符串转换为具有重复键的对象到数组
- python - 如何将 traitlets Dict 更改为普通的 python 字典类型?
- google-chrome - Chrome 扩展 - 锁定浏览器标签以用于显示目的
- python - 尝试使用 () 括号内联分配变量时,位置参数跟随关键字参数
- c - 可视化二叉树 (BST)
- swift - Swift TableViewCell,无法加载我的自定义 TableViewCell
- powershell - 从 Office 365 导出 pst 的 New-MailboxExportRequest 错误
- html - 高度和溢出规则应用于 ul 后,下拉菜单停止工作
- android - 我得到任务':app:generateReleaseBuildConfig'的执行失败。> 创建失败
- angular - Angular typeError:“调用者”、“被调用者”和“参数”属性可能无法在严格模式函数或参数对象上访问