我正在将旧堆栈移至下一个js,我需要一些帮助。
我有一个php后端,每次更改路由时,我都希望从该后端检查一个控制器,我想在服务器端进行操作。
[更改路由时,我使用Link
中的next-routes
,仅在客户端有效。
有什么方法可以在不刷新应用程序的情况下在服务器端调用控制器?
您可以利用Router's events和Custom App
来监视路线更改并执行所需的操作。在下面,您可以找到两种示例实现,一种使用类组件,另一种使用钩子。两者都可以解决问题。
App
// class component
import NextApp from 'next/app';
import Router from 'next/router';
class App extends NextApp {
componentDidMount() {
Router.events.on('routeChangeStart', () => {
// call to your backend
});
}
render() {
const { Component, pageProps } = this.props;
return <Component {...pageProps} />;
}
}
export default App;