首页 > 解决方案 > 如何在对象内部声明钩子?

问题描述

我正在使用这样的钩子

const Ref1 = useRef();
const Ref2 = useRef();
const AllRefs = { Ref1, Ref2 };

反正有没有写这个速记可能是这样的:

const AllRefs = { Ref1:useRef(), Ref2:useRef()};

标签: javascriptreactjsreact-native

解决方案


应该是这样吗?

import React, { useRef } from "react";

export default function App() {
  const arr = [1, 2, 3];

  const refs = useRef([]);

  return (
    <div className="App">
      {arr.map((item, index) => {
        return (
          <div
            key={index}
            ref={(element) => {
              refs.current[index] = element;
            }}
          >
            {item}
          </div>
        );
      })}
    </div>
  );
}

推荐阅读