next.js-由多个弹头组成的动态路由?

问题描述

是否可以构造包含预定义格式的动态零件的路由,例如/[name]-id[id],例如具有路由/bob-id303/mary-id205

我尝试的是创建一个文件 [name] -id [id] .js 。在getinitialProps内部,我console.log ctx,其中包含

  pathname: '/[name]-id[id]',query: { 'name]-id[id': 'bob-id303' },asPath: '/bob-id303',

另一方面,调用文件 [[[name]]-id [id]]。js 给出

Failed to reload dynamic routes: Error: Optional route parameters are not yet supported ("[[name]-id[id]]").

我想直接获得nameid,然后将它们通过初始道具传递到页面。我知道我可以解析asPath,但是还有另一种方法吗?

解决方法

您可以使用/ [slug],然后执行slug.split("-id")。但是,最好单独执行id,然后再获取元数据,因为名称可能会更改,然后该URL可能会显示404。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...