首页 > 解决方案 > 无法使用 RouterLink 在 Vaadin 中传递多个路径参数

问题描述

我是 Vaadin 的新手,并试图了解如何让 View 从 URL 获取多个参数。例如

http://www.some.com/book/18/page/41

数字 18 和 41 是参数。

我发现我可以实现HasUrlParameter<T>然后使用setParameter方法,但它只能用于一个参数。

标签: javavaadinvaadin14

解决方案


@WildcardParameter在你的setParameter方法中使用吗?通配符 URL 参数

假设greet(The bookin your case) 是路线,那么下面的代码设置18\page\41. 由于它是一个字符串,因此您需要对其进行解析并提取所需的值,但该值就在那里。

@Route("greet")
public class WildcardGreeting extends Div
        implements HasUrlParameter<String> {

        @Override
        public void setParameter(BeforeEvent event,
                @WildcardParameter String parameter) {
                if (parameter.isEmpty()) {
                        setText("Welcome anonymous.");
                } else {
                        setText(String.format(
                                "Handling parameter %s.",
                                parameter));
                }
        }
}

PS与问题无关,但查看您的网址,查询参数是否更适合您查询参数


推荐阅读