createRef
// ReactTypes定义的 react 类型 import type {RefObject} from 'shared/ReactTypes'; // an immutable object with a single mutable value // 具备单个可变值的不可变对象 export function createRef(): RefObject { const refObject = { current: null, }; if (__DEV__) { Object.seal(refObject); } return refObject; }
createRef
源码比较简短,就是返回一个带有current
属性的的refObject
对象.node
这也是使用createRef
的时候须要使用const node = this.myRef.current;
react
Object.seal()
Object.seal()
方法封闭一个对象,阻止添加新属性并将全部现有属性标记为不可配置。当前属性的值只要可写就能够改变。this
Object.freeze()
区别使用Object.freeze()冻结的对象中的现有属性是不可变的。用Object.seal()密封的对象能够改变其现有属性。code
https://developer.mozilla.org...