下一个js-每次更改路由时在服务器端调用一个函数

问题描述 投票:0回答:1

我正在将旧堆栈移至下一个js,我需要一些帮助。

我有一个php后端,每次更改路由时,我都希望从该后端检查一个控制器,我想在服务器端进行操作。

[更改路由时,我使用Link中的next-routes,仅在客户端有效。

有什么方法可以在不刷新应用程序的情况下在服务器端调用控制器?

php reactjs next.js server-side-rendering next
1个回答
1
投票

您可以利用Router's eventsCustom 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;
© www.soinside.com 2019 - 2024. All rights reserved.