将参数传递给 UI-Router 中的控制器
在 UI-Router 中,您可以使用 ui-sref 指令在状态和状态之间导航将参数传递给它们的控制器。为此,请按照以下步骤操作:
在状态配置中定义参数:
修改状态定义以包含预期参数作为 URL 的一部分:
.state('home', { url: '/:foo?bar', // Include parameters in the URL path ... });
访问控制器中的参数:
在控制器中,您可以通过 $stateParams 服务访问传递的参数。确保使用 $stateParams 而不是 $stateParam。
app.controller('SomeController', function($scope, $stateParams) { var foo = $stateParams.foo; var bar = $stateParams.bar; });
示例:
考虑以下状态定义:
.state('home', { url: '/', params: { foo: { value: 'fooVal', squash: false, }, }, ... });
在此在这种情况下,您可以使用 UI-SREF 将参数传递到主状态:
<a ui-sref="home({foo: 'customVal'})">Go to home state</a>
使用 params 的其他选项:
您可以使用 params 对象配置自定义参数在状态定义中,包括:
结论:
按照以下步骤,您可以使用 ui-sref 和 成功将参数传递给 UI-Router 中的控制器使用 $stateParams 访问它们。
以上是如何将参数传递给 UI-Router 中的控制器?的详细内容。更多信息请关注PHP中文网其他相关文章!