小编Nam*_*anD的帖子

如何在 React 渲染之前触发 useEffects?

我有一个道具从父组件传递到子组件,该组件根据用户的输入而变化。

当子组件渲染之前该 prop 发生变化时,我想在子组件中触发数据获取。我该怎么做?

我通过使用尝试了以下方式useEffects(()=>{},[props.a, props.b]),但总是在渲染后调用。请帮忙!

import React, { useEffect, useState } from "react";
import "./styles.css";

export default function parentComponent() {
  const [inputs, setInputs] = useState({ a: "", b: "" });
  return (
    <>
      <input
        value={inputs.a}
        onChange={(event) => {
          const value = event.target.value;
          setInputs((prevState) => {
            return { ...prevState, a: value };
          });
        }}
      />
      <input
        value={inputs.b}
        onChange={(event) => {
          const value = event.target.value;
          setInputs((prevState) => {
            return { ...prevState, b: value };
          });
        }}
      />
      <ChildComponent a={inputs.a} …
Run Code Online (Sandbox Code Playgroud)

javascript frontend reactjs react-hooks use-effect

26
推荐指数
5
解决办法
8万
查看次数

标签 统计

frontend ×1

javascript ×1

react-hooks ×1

reactjs ×1

use-effect ×1