Giter Club home page Giter Club logo

Comments (6)

atscott avatar atscott commented on May 1, 2024 1

Ah, actually I just found the part about only executing on the browser:

* Note that the callback will run
* - in the order it was registered
* - on browser platforms only

Removing help wanted label. The documentation doesn't mention that these are run outside the zone but before we add that, I want to raise this as an issue to the team again. I don't know if running them outside the zone is the right thing to do.

from angular.

ABNERMATHEUS avatar ABNERMATHEUS commented on May 1, 2024

This working, but why?

  ngOnInit(): void {
    setTimeout(() => {
      this.title = 'AppComponent rendered'
    }, 3000);
  }

from angular.

atscott avatar atscott commented on May 1, 2024

Render hooks are not executed on the server: https://angular.io/guide/ssr#authoring-server-compatible-components

I was surprised to find that this wasn’t documented directly on the hook api docs as well. This should be fixed.

from angular.

atscott avatar atscott commented on May 1, 2024

One additional note is that render hooks execute outside the Angular zone in the browser so the setTimeout will not trigger change detection.

from angular.

ABNERMATHEUS avatar ABNERMATHEUS commented on May 1, 2024

Please explain to me what I can do to help, to contribute

from angular.

spock123 avatar spock123 commented on May 1, 2024

@ABNERMATHEUS If you want something to run on both client and/or server, use OnInit

If you want something to run only in clients, use afterNextRender(), as this will not be executed on the server.

afterNextRender() is specifically made to only run in browsers, and only when template has been rendered, so you have access to template components, html tags etc. it can replace afterViewInit

from angular.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.