如何在Plunker中使用uiRouter使用url参数设置$ stateParams?

Gus*_*tav 9 angularjs plunker angular-ui-router

我正在尝试使用plunker使用url-query参数演示一些东西,但我甚至无法显示参数(然后因此不能演示我的原始问题).

我已经创建了一个简单的plunker,其中状态url属性看起来像这样:url: '/root?firstParam' 我想要的是填充$stateParams.firstParam我在该queryParameter的浏览器的url中写的任何内容. Plunker,plunkerWithParameter?firstParam = foo

我想,$stateParams.firstParam对于第一个url,它将是未定义的,但是对于第二个url,将设置为"foo".但在两种情况下都没有定义.

我该如何$stateParams.firstParam设定?

hen*_*der 7

编辑:似乎它实际上是可能的(@Rogerio Soares答案证明了这一点).在这里保留我的答案,因为代码中还有其他错误.

由于它在iFrame中运行,因此无法从Plnkr应用程序中的浏览器搜索栏中获取参数.我修复了你的另一个问题如下:

我将参数添加到您的otherwise语句中,如下所示:

$urlRouterProvider.otherwise('/root?firstParam=test');
Run Code Online (Sandbox Code Playgroud)

问题是,当没有找到其他路由时,您重定向到root,并且没有为路由指定任何参数.

更新了PlunkR:https://plnkr.co/edit/OxEGVkhzBO332ym3q8fV p = preview