如何使用angular在config.route.js中传递多个参数?

时间:2014-07-07 21:14:52

标签: javascript angularjs

我正在尝试在config.route.js文件中传递多个参数。通过一个参数工作正常,但我无法通过两个。第二种方式是可选的。有任何想法吗?这就是我到目前为止......

function getRoutes() {
    return [{
        {
            url: '/main/:containerId',
            config: {
                title: 'main',
                templateUrl: 'app/main/edit.html',
                params: 'containerId',
            }
        }, {
            url: '/main/:containerId/:planId',
            config: {
                title: 'main',
                templateUrl: 'app/main/edit.html',
                params: {
                    containerId: 'containerId',
                    planId:'planId'
                }
            }
        }

2 个答案:

答案 0 :(得分:1)

可选参数应以?

表示

例如

url: '/main/:containerId/:planId?'

这个小提琴可能会帮助您获得有关可选参数的更多知识。

http://jsfiddle.net/p3QaK/14/

在.otherwise({redirectTo:' / 0 /'})中,结尾/很重要,不应该遗漏。您应该尝试将其更改为' / 0/3'并且您将看到传递的参数,否则只传递第一个参数。

答案 1 :(得分:0)

为什么在使用$routeParams服务时会使事情变得复杂?

您可以跳过在config.route.js文件中明确定义params,只需将服务注入控制器即可。有了它,您就可以访问控制器中的参数。