MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    TypeError: Cannot read property 'getElementsByClassName' of null

    Scheduled Pinned Locked Moved Troubleshooting
    4 Posts 3 Posters 9.7k Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Mr.SpontiM Offline
      Mr.Sponti
      last edited by

      Hi,
      I’m at my wit’s end!
      Based on module “MMM-FHEM by BenRoe” I’ve created a module to receive event changes from the home automation pimatic. The module works fine. Then I started to write a second modul and can’t get rid of the error:
      Cannot read property ‘getElementsByClassName’ of nullt

      To isolate the problem I reduced the code to the example from the module development page.

      Module.register("HelloWorld",{
          // Default module config.
          defaults: {
              text: "Hello World!"
          },
          
          start: function() {
              var self = this;
              setInterval(function() {
                  self.updateDom(); // no speed defined, so it updates instantly.
              }, 1000); //perform every 1000 milliseconds.
          },
          // Override dom generator.
          getDom: function() {
              var wrapper = document.createElement("div");
              wrapper.className = 'MyHelloWorld';
              wrapper.innerHTML = this.config.text;
              return wrapper;
          }
      });
      

      Following the console log:

      alt text

      What’ s wrong? I need help from an expert!

      strawberry 3.141S 1 Reply Last reply Reply Quote 0
      • strawberry 3.141S Offline
        strawberry 3.141 Project Sponsor Module Developer @Mr.Sponti
        last edited by

        @Mr.Sponti that happens because you are trying to update the DOM before its even created

        Please create a github issue if you need help, so I can keep track

        1 Reply Last reply Reply Quote 0
        • MichMichM Offline
          MichMich
          last edited by

          Try addicting this method to your module:

          notificationReceived: function(notification, payload) {
              if (notification === 'DOM_OBJECTS_CREATED') {
                  // you can now schedule the dom update method.
              }
          }
          
          1 Reply Last reply Reply Quote 0
          • Mr.SpontiM Offline
            Mr.Sponti
            last edited by

            @MichMich: Thank’s a lot, I’ve fixed the issue. Result can be reviewed here

            1 Reply Last reply Reply Quote 0

            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

            With your input, this post could be even better 💗

            Register Login
            • 1 / 1
            • First post
              Last post
            Enjoying MagicMirror? Please consider a donation!
            MagicMirror created by Michael Teeuw.
            Forum managed by Sam, technical setup by Karsten.
            This forum is using NodeBB as its core | Contributors
            Contact | Privacy Policy