我一直在阅读关于这个主题的先前的问题,似乎没有任何工作适合我。使用Angular从另一个网站获取URL参数?
我的页面是从正在通过像这样的外部应用程序调用:
http://MySite/index.html?CompanyId=4000&ActionType=Reservation
我需要从这个阅读CompanyId和操作类型。
我无法因为参数任何路由信息被添加到URL之前使用路由参数。
我已经尝试了这两个...和y返回true?
var x = $location.search('CompanyId');
var y = $location.search().CompanyId;
我的模块配置的定义是这样的:
// Defining a new module
var module = angular.module("aaa", ["ui.bootstrap","ngRoute"]);
module.config(['$routeProvider', '$locationProvider',
function ($routeProvider, $locationProvider) {
$routeProvider
.when("/displaySizes", {
templateUrl: "views/displaySizes.html",
controller: "displaySizesController"
})
.when("/collectCustomerInfo", {
templateUrl: "views/collectCustomerInfo.html",
controller: "collectCustomerInfoCtrl"
})
.otherwise({
redirectTo: "/displaySizes"
})
$locationProvider.html5Mode(true);
}]);
任何人发现我在做什么错?
为了澄清......我有什么事情是这样的:
http://example.com?companyId=7/#/some/path?foo=bar&baz=xoxo
所以我想读的参数是#路径之前。看起来$ location.search只搜索#之后的路径部分?有没有办法获取companyId参数(无需编写所有解析代码)?
你是什么意思?“我不能使用路由参数,因为参数是在路由信息添加到URL之前。” - 这些参数看起来像是URL的路由信息。另外,请记住,您始终可以在角度之前挂钩(例如,在您包含角度库并自行访问document.location之前的'
'部分中。 –