Javascript 将页面重定向到url Next.JS
我有一个运行next.js的简单网页,该网页只返回“helloworld”元素,我希望它将我重定向到另一个URL(youtube) 加载时,它基本上是一个重定向页面 我的简单页面:Javascript 将页面重定向到url Next.JS,javascript,url,redirect,next.js,Javascript,Url,Redirect,Next.js,我有一个运行next.js的简单网页,该网页只返回“helloworld”元素,我希望它将我重定向到另一个URL(youtube) 加载时,它基本上是一个重定向页面 我的简单页面: function Home() { return <div>Hello World</div> } export default Home 函数Home(){ 返回你好世界 } 导出默认主页 我甚至尝试了js window.location功能,但在next.js中无效。加载页面
function Home() {
return <div>Hello World</div>
}
export default Home
函数Home(){
返回你好世界
}
导出默认主页
我甚至尝试了js window.location功能,但在
next.js中无效。加载页面后,您可以使用路由器重定向,例如:
import Router from 'next/router'
componentDidMount(){
const {pathname} = Router
if(pathname == '/' ){
Router.push('/hello-nextjs')
}
}
或带挂钩:
import React, { useEffect } from "react";
...
useEffect(() => {
const {pathname} = Router
if(pathname == '/' ){
Router.push('/hello-nextjs')
}
});
在next.js
中,您可以在页面加载后使用Router
重定向,例如:
import Router from 'next/router'
componentDidMount(){
const {pathname} = Router
if(pathname == '/' ){
Router.push('/hello-nextjs')
}
}
或带挂钩:
import React, { useEffect } from "react";
...
useEffect(() => {
const {pathname} = Router
if(pathname == '/' ){
Router.push('/hello-nextjs')
}
});
为了在服务器端呈现时重定向页面,可以将其放在/pages/文件中导出函数的底部,并设置if条件。例如,如果该页面不存在,它将重定向到其他页面
这样,您就不必玩路线。按
if (!pageData) {
res.statusCode = 301;
res.setHeader("location", "/page-you-want-to-redirect-to");
res.end();
return {props: {notFound: true}};
}
Export default Page
为了在服务器端呈现时重定向页面,可以将其放在/pages/文件中导出函数的底部,并设置if条件。例如,如果该页面不存在,它将重定向到其他页面
这样,您就不必玩路线。按
if (!pageData) {
res.statusCode = 301;
res.setHeader("location", "/page-you-want-to-redirect-to");
res.end();
return {props: {notFound: true}};
}
Export default Page
我建议使用useRouter
代替hooks方法。我建议使用useRouter
代替hooks方法。