Angularjs 可以从URL获取参数
我正在做我的angularui项目。 在模块中,我尝试获取我在URL中发送的变量 以下是模块定义:Angularjs 可以从URL获取参数,angularjs,angular-ui-router,angular-ui,state,Angularjs,Angular Ui Router,Angular Ui,State,我正在做我的angularui项目。 在模块中,我尝试获取我在URL中发送的变量 以下是模块定义: angular.module("workPlan", ['damageEvent', 'ui.router', 'geomindCommon', 'templates', 'l
angular.module("workPlan", ['damageEvent',
'ui.router',
'geomindCommon',
'templates',
'lookups',
'ngTouch',
'ui.grid',
'ui.grid.expandable',
'ui.grid.selection',
'ui.grid.pinning',
'ui.grid.resizeColumns',
'ui.bootstrap'
])
.config([
"$stateProvider",
"$urlRouterProvider",
function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise("/MainPage");
$stateProvider
.state("workPlan", {
abstract: true,
url: "/",
template: "<ui-view></ui-view>"
})
.state("workPlan.list", {
url: "MainPage",
templateUrl: "app/workPlan/templates/workPlanList.tmpl.html",
controller: "workPlanListController",
controllerAs: "list",
resolve: {
param: function ($stateParams) {
var stringParam = $stateParams.myParam;
return $stateParams.myParam;
},
filterParameters: [filterParametersResolver],
workPlans: ["workPlanServise", workPlanServiseResolver]
}
})
}
]);
这是我的网址:
http://example.com/playground#/MainPage?myParam = "Some string"
但是stringParam总是未定义的
知道我做错了什么吗?为什么
stringParam
是未定义的
我们必须定义参数。在url
中或使用params:{}
对象。因此,这应该解决这个问题:
.state("workPlan.list", {
//url: "MainPage",
url: "MainPage?myParam", // here we say, that myParam is expected in url
其他方式如何设置params
params:{}
(请参阅我的链接)可以使用默认值定义它,如果它应该被压缩,或者如果它应该被命名为param,比如?param1=x¶m2=y。。。
.state("workPlan.list", {
//url: "MainPage",
url: "MainPage?myParam", // here we say, that myParam is expected in url