繁体   English   中英

如何在 NextJS 的 getServerSideProps 中获取 useState 值

[英]How to get useState values inside getServerSideProps in NextJS

我有两个功能,一个 function 从用户那里获取输入,其他执行搜索提供的输入数据。 我想在getServerSideProps function 中使用searchQuery中的useState 有没有办法做到这一点?

 function SearchDemo() { const [searchQuery, setSearchQuery] = useState('') const ChangeHandler = event => { setSearchQuery(event.target.value) } const ButtonHandler = event => { event.preventDefault() console.log(`Data: ${searchQuery}`) } return ( <div> <form onSubmit={ButtonHandler}> <div> <label>Search:</label> <input type="text" name="search" value={searchQuery} onChange={ChangeHandler}/> <button>Search</button> </div> </form> </div> ); } export async function getServerSideProps({query: {page}, searchQuery}){ console.log(searchQuery) return { props: { data: data } } }

您需要推送 url 并重新加载页面,因为它是服务器端渲染的。

const router = useRouter()
const ButtonHandler = event => {
  event.preventDefault()
  router.push(`/thecurrentUrl?search=${searchQuery}`
  // if doesn't work then use window.location.href
  console.log(`Data: ${searchQuery}`)
}

export async function getServerSideProps({query: {page}, searchQuery}){
    console.log(query.search)
    return {
        props: {
            data: data
        }
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM