网址上的 AngularJS "#!"

标签 angularjs web hash routing

有人知道什么是“#!”方法。在网址上?

我一直在工作,直到出现这种情况,我的网址中总是有一个“#”,并希望保持这种状态。
目前路由不再工作,可能是因为这个 url 更改。

这是商业项目的一部分,我不想更改为 html5Mode。

我尝试使用:

$locationProvider.hashPrefix("");

即使以这种方式更正 url 路由也有问题

最佳答案

那叫哈希爆炸 .

要修复此用途:

    angular.module('yourApp', [])
    .config(['$locationProvider', function($locationProvider) {
        $locationProvider.hashPrefix('');
    }]);

添加 html5Mode 甚至可以去掉 url 中的“#”,但如果刷新页面,则会出现 404 错误。这可以通过稍微配置您的服务器来解决。为此,您可能想查看漂亮的小教程:
  • https://scotch.io/tutorials/pretty-urls-in-angularjs-removing-the-hashtag
  • https://www.theodo.fr/blog/2017/01/pretty-url-in-angularjs-and-loopback-drop-the/

  • stackoverlow 中的 hashbang 问题还有另一个答案:

    Doing links like Twitter, Hash-Bang #! URL's

    关于网址上的 AngularJS "#!",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41111409/

    相关文章:

    javascript - 通过网络链接在 Whatsapp 中分享信息

    html - 如何拉伸(stretch)图像以覆盖 div 的整个宽度和高度? (使用 flex 盒)

    javascript - 当时对可见字段进行表单验证?

    angularjs - 如何限制 AngularJS 中附件(文件上传)的大小?

    html - 直接从服务器加载图片

    c++ - 有效检查 C++ 中 float 组的值变化

    asynchronous - Trigger.io + Angular.js 并在调用 forge.ajax 后更新 View

    javascript - Google Apps 脚本使用函数写入 HTML

    php - 如果我从数据库中获取哈希值,password_verify 返回 false,但如果我复制并粘贴它,则返回 true

    ruby-on-rails-3 - ROR - 为 DB ID 生成字母数字字符串