Попытка получить доступ к свойству объекта, которое существует, но возвращает неопределенное с помощью React useEffect / useState - PullRequest
0 голосов
/ 16 апреля 2020

Я пытаюсь получить свойство name от объекта stockRowSelected. Но это продолжает возвращаться undefined. Цель состоит в том, чтобы обновлять каждый раз, когда пользователь выбирает новую строку в таблице Ag-Grid. Когда я проверяю отладку, кажется, что правильный объект и его свойства передаются в stockRowSelected, но всякий раз, когда я пытаюсь получить доступ к свойству .name, он все равно печатает TEST: undefined. Я все еще думаю о useState и useEffect, если кто-нибудь может объяснить, что происходит, пожалуйста?

function StockTable() {
  const [stockRowSelected, setStockRow] = useState([]);

  useEffect(() => {

     console.log("TEST: " + stockRowSelected.name);

  },[stockRowSelected]);

  return (

    <div>
      <AgGridReact className = "tableStocks"
      columnDefs={columns} 
      rowData={rowData}
      pagination = {true}
      paginationPageSize={50}
      rowSelection = 'single'
      onSelectionChanged = {event => {
        let selectedRow = event.api.getSelectedRows();
        setStockRow(selectedRow);
      }}
      />

    </div>
  );
}

Как выглядит stockRowSelected объект ниже. Это то, что устанавливается с помощью useState из строки selectedRow = event.api.getSelectedRows();.

[{name: "Apple", symbol: "AAPL", industry: "Tech"}]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...