【问题标题】:React componentDidMount is not firingReact componentDidMount 没有触发
【发布时间】:2019-02-25 15:38:13
【问题描述】:

我在 React 中有以下路线:

<Route
    path={`${this.props.match.path}horoskop`}
    render={() => <HoroscopeController
        horoscopeService={this.horoscopeService}
        fortuneTellerService={this.fortuneTellerService}/>}/>

和以下控制器:

class HoroscopeController extends React.Component {
    constructor(props) {
        super(props);

        console.log("hejhej");
    }

    componentDidMount() {
        console.log("testing);
    }

    render() {
        ...
    }
}

我总是在控制台中看到“hejhej”(来自构造函数),当我转到 http://localhost:3000/horoskop 时,我在控制台中看到“testing”,但当我转到 http://localhost:3000/horoskop/vattumannen 时却没有。我曾尝试在隐身浏览器中直接进入子路径,但它没有帮助。有什么想法吗?

【问题讨论】:

    标签: javascript reactjs routes react-router


    【解决方案1】:

    在路径定义的路径末尾添加一个星号,如下所示:

    path={`${this.props.match.path}horoskop*`}
    

    【讨论】:

    • 抱歉,这对我不起作用。我也有同样的问题。还有其他想法吗?
    • 对不起,代码中包含很多公司机密,我无法显示。感谢您提供帮助。
    猜你喜欢
    • 2018-09-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-05
    • 1970-01-01
    • 2020-11-21
    • 2019-03-29
    • 1970-01-01
    相关资源
    最近更新 更多