当前位置: 首页 > 面试题库 >

从AngularJS网址中删除片段标识符(#符号)

寿高阳
2023-03-14
问题内容

是否可以从angular.js网址中删除#符号?

当我更改视图并使用参数更新URL时,我仍然希望能够使用浏览器的后退按钮等,但是我不希望使用#符号。

教程routeProvider声明如下:

angular.module('phonecat', []).
  config(['$routeProvider', function($routeProvider) {
  $routeProvider.
  when('/phones', {templateUrl: 'partials/phone-list.html',   controller: PhoneListCtrl}).
  when('/phones/:phoneId', {templateUrl: 'partials/phone-detail.html', controller: PhoneDetailCtrl}).
  otherwise({redirectTo: '/phones'});
}]);

如果没有#,我可以对其进行编辑以具有相同的功能吗?


问题答案:

是的,您应该配置$locationProvider并设置html5Modetrue

angular.module('phonecat', []).
  config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {

    $routeProvider.
      when('/phones', {templateUrl: 'partials/phone-list.html',   controller: PhoneListCtrl}).
      when('/phones/:phoneId', {templateUrl: 'partials/phone-detail.html', controller: PhoneDetailCtrl}).
      otherwise({redirectTo: '/phones'});

    $locationProvider.html5Mode(true);

  }]);


 类似资料:
  • 问题内容: 从Java脚本的路径中删除查询字符串的简单方法是什么?我已经看到了使用window.location.search的Jquery插件。我不能这样做:在我的情况下,URL是从AJAX设置的变量。 问题答案: 一个简单的方法是: 对于那些还希望 在不存在querystring的情况* 下 删除哈希 (不是原始问题的一部分)的人,需要做更多的工作: * 编辑 @caub(最初为@crl)建议

  • 问题内容: 我要在我的一个项目中对分页进行ajax化,并且由于我希望用户能够为当前页面添加书签,因此我通过哈希附加页面编号,例如: 多数民众赞成在它工作正常,一切,除了,当页码为1,我不想成为,我只是希望它成为 我尝试了以下变体: 的作品,但网址现在就像,我不很哈希那里。 根本不使用window.location.hash,但是当用户从第3页回到第1页时,他位于第1页,但是url仍然是因为我没有弄

  • 问题内容: 如何从中获取URL片段标识符? 该javadocs中似乎没有提到它。 问题答案: 您无法以您想要的方式获得URL片段。 通常,浏览器不会将片段发送到服务器。可以通过使用网络协议分析器(例如tcpdump,Ethereal,Wireshark和Charles)来验证。 但是,您可以在JavaScript请求中将片段字符串作为GET / POST参数发送。要使用JavaScript获取值,

  • 问题内容: 有人知道一种从SQL Server的字段中删除标点符号的好方法吗? 我在想 但是当我打算删除大量不同的字符时,这似乎有点乏味,例如:!@#$%^&*()<>:“ 提前致谢 问题答案: 理想情况下,您可以使用如上所述的C#+ LINQ之类的应用程序语言来执行此操作。 但是,如果您仅想在T-SQL中执行此操作,一种使事情变得更整洁的方法是首先创建一个表,其中包含要删除的所有标点符号。 接下

  • 问题内容: 我要在我的一个项目中对分页进行ajax化,并且由于我希望用户能够为当前页面添加书签,因此我通过哈希附加页面编号,例如: 并且多数民众赞成在它工作正常,一切,除了,当页码为1时,我不想成为,我只是希望它成为 我尝试了以下变体: 的作品,但网址现在就像,我不很哈希那里。 根本不使用window.location.hash,但是当用户从第3页回到第1页时,他位于第1页,但是url仍然是因为我

  • 问题内容: 我知道从AngularJS中删除哈希值非常简单,但是问题是后端在Django中。 因此,除非使用“ F5”刷新页面,否则该应用程序将起作用。 因此,如果单击该按钮,则可以工作,但是刷新页面后服务器会在文件中搜索该页面 有人可以建议我对此进行任何修复吗? 问题答案: 一切都正确。刷新页面时,首先在服务器上处理请求(并转到django路由器)。因此服务器应该知道它应该为该URL返回角度页面