下一个js动态路径名路由



例如,我看到的路径名是/example/123我需要将它重定向到/otherExample/123.

我正在使用next/router。我得到urli作为router. path .

if(router.asPath == '/example/123') {
Router.push('/otherExample/123')
}

我不知道怎么做,因为123部分是动态的。

您可以使用next的重定向功能来解决这个问题。你可以在这里了解更多。

next.config.js中添加redirects键:

async redirects() {
return [
{
source: '/example/:slug',
destination: '/otherExample/:slug',
permanent: true,
},
]
},

如果您希望永久缓存重定向,请将permanent设置为true。否则,您应该将其设置为false。

直接剪掉路径的最后一部分并使用:

const pathParts = path.split('/');
const exampleId = pathParts[pathParts.length - 1];
Router.push(`/otherExample/${exampleId}`);

或者简单地使用路由器。查询获取参数的值:

const { exampleId } = router.query;
if (exampleId) {
Router.push(`/otherExample/${exampleId}`);
}

相关内容

  • 没有找到相关文章

最新更新