Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 可以从URL获取参数_Angularjs_Angular Ui Router_Angular Ui_State - Fatal编程技术网

Angularjs 可以从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

我正在做我的angularui项目。 在模块中,我尝试获取我在URL中发送的变量

以下是模块定义:

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


myParam可以是可选的?您的param可以是任何用户界面路由器支持的参数。使用
params:{}
(请参阅我的链接)可以使用默认值定义它,如果它应该被压缩,或者如果它应该被命名为param,比如?param1=x¶m2=y。。。
.state("workPlan.list", {
     //url: "MainPage",
     url: "MainPage?myParam", // here we say, that myParam is expected in url