React 深入学习:ReactCreateRef

769 阅读1分钟

path:packages/react/src/ReactCreateRef.js

源码

import type {RefObject} from 'shared/ReactTypes';

// 一个具有单个可变值的不可变对象
export function createRef(): RefObject {
  const refObject = {
    current: null,
  };
  if (__DEV__) {
    Object.seal(refObject);
  }
  return refObject;
}

RefObject 从其他模块导入,代码如下:

export type RefObject = {|
  current: any,
|};

解析

createRef 方法很简单,就是创建了一个 RefObject 类型的对象,其中只包含一个 current 属性,用来进行数据存储。