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.

    Altering a Module

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    9 Posts 3 Posters 1.2k 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.
    • R Offline
      rrslssr
      last edited by

      Well, it looks like I could have waited a few days before posting my original question.
      (heavy sigh)
      I was able to change and add pieces to the original code to get my MM to do exactly what I wanted.

      But…in checking further, I noticed that my altered module produces errors:
      Parameter mismatch in module.show: callback is not an optional parameter!

      MMM-NearWeatherClock - Errors.JPG

      I have not checked to see if the original MMM-NearCompliments module also produces those errors.

      Nevertheless, can someone tell me if I should be worried about these errors?
      After all, my modified module does exactly what I wanted.

      Thanks.
      Rich (rrslssr)

      S 1 Reply Last reply Reply Quote 0
      • S Do not disturb
        sdetweil @rrslssr
        last edited by sdetweil

        @rrslssr on show and hide, the second Parm is supposed to be a function

        if u don’t expect callbacks, just use this as the second Parm

        ()=>{}
        

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        R 1 Reply Last reply Reply Quote 0
        • R Offline
          rrslssr @sdetweil
          last edited by

          @sdetweil I am sorry, but I do not understand your response.
          The original code lines @semox used in the module are:

          compliment.hide(0);
          ...
          compliment.show(self.config.animationSpeed, {lockString: this.name})
          ...
          compliment.hide(self.config.animationSpeed, {lockString: this.name})
          

          Are you saying that I should change the ()'s to {}'s in both instances?
          Or are you saying that the second Parm in the 2 longer .show/.hide commands shown above, should be in {}'s? If so, they already are are they not?

          Rich

          S 1 Reply Last reply Reply Quote 0
          • S Do not disturb
            sdetweil @rrslssr
            last edited by

            @rrslssr the functions show() and hide() take 3 parms

            (speed, callback_function, options)

            https://docs.magicmirror.builders/development/core-module-file.html#module-instance-methods

            the ones you have only have 2 parms…

            I was suggesting, if you want to get rid of the errors, that you insert a function as the second parm

            and the simplest function, is the arrow function () => {}
            (parms in) => {function code}

            so, my thing is
            () (no parms) =>{} (empty function code)

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            R 2 Replies Last reply Reply Quote 0
            • R Offline
              rrslssr @sdetweil
              last edited by

              @sdetweil Thank you. Your explanation along with the link to the module-instance-methods, really help clarify things for this novice.

              Take care.
              Rich

              1 Reply Last reply Reply Quote 1
              • R Offline
                rrslssr @sdetweil
                last edited by

                @sdetweil I’m happy to report that changing the code changes (as shown below) worked to eliminate the errors:

                 compliment.show(self.config.animationSpeed, ()=>{}, {lockString: this.name})
                

                The only thing left is a warning : module tries to update the DOM without being displayed. But I don’t think I’ll worry about this error since my Frankenstein Module does not display anything.

                Thanks again for your help.
                Rich

                1 Reply Last reply Reply Quote 0
                • R Offline
                  rmonkey
                  last edited by

                  I want to do the exact same thing down the road when I need a new project to tinker with.

                  Love it and thank you for posting the question and thank you to Sam for working through the solution.

                  1 Reply Last reply Reply Quote 0
                  • 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