Angularjs中使用$location获取url参数时,遇到的坑~~~

时间:2021-01-18 19:55:07

今天在开发时候,需要用到Angularjs1.4.6获取url参数,网上查了一下,有部分文章提到用$location来获取。大致方法如下

var app = angular.module('myApp', []);  -- 很正常,做angularjs必须加写

app.config(['$locationProvider', function ($locationProvider) {
$locationProvider.html5Mode(true);
}]); -- 这段就是用来让$location可以获取到url的

app.controller('formCtrl', ['$scope', '$location', function ($scope, $location) {

  alert($location.search().id); -- 这段就是用来获取url参数中id值

}]);

网上能找到的,基本就是这个套路。

按理来说,应该是好了。但是,你执行后就会发现,报错,报错,无限报错。而且报的angularjs的错误,你根本不会知道是为什么。

你再想知道为什么就能难了。为啥?因为我现在这个时候用angularjs的人就不多,能有教程的就更加少了。根本不要说这种坑爹的问题。

更加让我不得不得吐槽的是,为什么这些大神在提供这些解决方案时,漏说了一个很重要的东西。以至于,前面的代码,写了也白写,对看的人来说,报错就是无用

不废话,想让代码执行不报错,需要添加

<base href="/" />

这句添加到你这个页面的<head>头里。如果你是内容页就添加的模板页的<head>头里

这样就好了。希望后面的人不要在采坑了。

And 我自己也记录一下。

PS.希望看到的人,觉得很有用,就点个赞吧。