代码之家  ›  专栏  ›  技术社区  ›  Chunky Chunk

静态变量:对象属性vs useRef()

  •  0
  • Chunky Chunk  · 技术社区  · 6 年前

    在React中声明静态变量的优点或缺点是什么 useRef() hook vs.简单地将它们声明为对象属性。

    useRef方法:

    import React, { useRef } from "react";
    
    const MyComponent = () => {
    
      const staticProp = useRef("Hello, World!");
    
      return (
        <div>{staticProp.current}</div>
      )
    }
    
    export default MyComponent;
    

    对象属性方法:

    import React from "react";
    
    const MyComponent = () => {
    
      return (
        <div>{MyComponent.staticPro}</div>
      )
    }
    
    MyComponent.staticProp = "Hello, World!";
    
    export default MyComponent;
    
    1 回复  |  直到 6 年前
        1
  •  6
  •   Pierre V.    6 年前

    参考文献对学生很有用 mutable values 绑定到组件实例。它们类似于实例变量。如果变量应该是静态的,则不需要引用。可以将其声明为组件函数的属性,也可以在外部范围中将其声明为常量:

    const staticProp = "Hello, World!";
    
    const MyComponent = () => {
      return (
        <div>{staticProp}</div>
      )
    }