angularjs - 当我使用 $locationProvider.html5Mode(true); 时,$window.location.href 刷新整个页面;
问题描述
我在我的应用程序中使用了 html5mode。
$locationProvider.html5Mode(true);
当我$window.location.href
在我的应用程序中使用它时,它会重新加载整个页面。
如果我删除$window
并使用$state.go
该页面,则不会完全像那样重新加载。
有谁知道为什么会这样?使用时是否有任何解决方案可以不重新加载整个页面$window
?
解决方案
重新加载确实是由于 $window.location.href use。
您可以使用$location.path方法更改 URL,而无需重新加载整个页面。
$location.path('/newUrlValue');
您还可以在标题中为相对链接添加基本标记:
<html>
<head>
<base href="/">
</head>
</html>
对于无法处理 HTML5 History API 的浏览器,将自动使用 hashbang 前缀(默认为 '!'),并且可以使用hashPrefix
提供者的方法进行更改。
推荐阅读
- php - 如何在 php:7.4-fpm-alpine docker 容器中启用 xdebug?
- asp.net - .Net Core 显示模型验证与验证过滤器
- python - 在 Django 3.1 中管理静态文件
- ios - 可编码结构中的 Firestore 字段值
- angular - 使用 renderer2 获取“html”标签以设置样式高度
- mysql - MySQL查询列值更改的时间戳
- reactjs - 在 react 中使用 react dnd 库上传文件功能
- php - 如何获取用户输入并将其发送到同一文件中的查询?
- c# - 并行分块与顺序分块文件上传
- angular - 无法更新科尔多瓦角度的插件