this.base peut-il faire référence au composant actuel dans Preactjs ? j'ai un code qui a une ligne

const rect = this.base.getBoundingClientRect();
1
Tushar Khairnar 14 févr. 2020 à 08:35

1 réponse

Meilleure réponse

this.base est une référence à l'élément DOM racine de votre composant actuel.

C'est l'élément JSX qui est renvoyé par la fonction render de votre composant.

Ainsi, vous pouvez utiliser this.base une fois votre Composant monté.

Voici un petit exemple du cycle de vie de la documentation officielle :

class Example extends Component {
  shouldComponentUpdate() {
    // do not re-render via diff:
    return false;
  }

  componentWillReceiveProps(nextProps) {
    // you can do something with incoming props here if you need
  }

  componentDidMount() {
    // now mounted, can freely modify the DOM:
    let thing = document.createElement('maybe-a-custom-element');
    this.base.appendChild(thing);
  }

  componentWillUnmount() {
    // component is about to be removed from the DOM, perform any cleanup.
  }

  render() {
    return <div class="example" />;
  }
}
1
Neeko 14 févr. 2020 à 09:29