溫馨提示×

react父組件怎么獲取子組件的值

小億
365
2024-01-08 10:58:11
欄目: 編程語言

在React中,父組件可以通過props將值傳遞給子組件,并通過回調函數(shù)的方式從子組件中獲取值。

以下是一個示例:

父組件:

import React, { useState } from 'react';
import ChildComponent from './ChildComponent';

function ParentComponent() {
  const [childValue, setChildValue] = useState('');

  const handleChildValueChange = (value) => {
    setChildValue(value);
  };

  return (
    <div>
      <ChildComponent onValueChange={handleChildValueChange} />
      <p>子組件的值:{childValue}</p>
    </div>
  );
}

export default ParentComponent;

子組件:

import React, { useState } from 'react';

function ChildComponent({ onValueChange }) {
  const [value, setValue] = useState('');

  const handleChange = (event) => {
    const newValue = event.target.value;
    setValue(newValue);
    onValueChange(newValue);
  };

  return (
    <input type="text" value={value} onChange={handleChange} />
  );
}

export default ChildComponent;

在父組件中,通過使用useState鉤子來創(chuàng)建一個狀態(tài)變量childValue,用來存儲子組件的值。

然后,定義一個回調函數(shù)handleChildValueChange,它會在子組件的值發(fā)生變化時被調用,并將新的值更新到childValue變量中。

在子組件中,通過使用useState鉤子來創(chuàng)建一個狀態(tài)變量value,用來存儲輸入框的值。

然后,定義一個handleChange函數(shù),它會在輸入框的值發(fā)生變化時被調用,并將新的值更新到value變量中。

同時,調用父組件傳遞過來的onValueChange回調函數(shù),并將新的值作為參數(shù)傳遞給父組件。

最后,在父組件中,通過傳遞handleChildValueChange函數(shù)給子組件的onValueChange屬性,實現(xiàn)了父組件獲取子組件的值的功能。

當子組件的輸入框的值發(fā)生變化時,父組件會自動更新并顯示最新的值。

0