所以这似乎是一个常见问题,但我还没有找到任何明确的答案。
基本上我有一个状态:
.state('users', {
url: '/example/:id',
templateUrl: 'angular-views/example.html',
controller: 'ExampleCtrl'
})
我希望 id 是可选的。
当然匹配
example/
example/1234
但如果没有尾随斜杠,它就不匹配。
example
I tried $urlMatcherFactoryProvider.strictMode(false);
,但这似乎不适用于这种情况。我可以用example?param=1234
,但我更喜欢更干净的版本。
我真的需要定义第二个状态才能使其工作吗?
您可以定义可选的 URL 参数,方法是在params
对象,像这样。squash
如果未定义,将隐藏链接中的参数。
.state('users', {
url: '/example/:id',
templateUrl: 'angular-views/example.html',
controller: 'ExampleCtrl',
params: {
id: {
value: null,
squash: true
}
}
});
我在本地尝试过这个,无论尾随斜杠如何,它似乎都可以正常工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)