Use server generated variable in an included frontend js file2019 Community Moderator ElectionHow can I upload files asynchronously?How do I check if an array includes an object in JavaScript?What is the scope of variables in JavaScript?What's the difference between using “let” and “var” to declare a variable in JavaScript?How do you check if a variable is an array in JavaScript?How do I include a JavaScript file in another JavaScript file?How to determine if variable is 'undefined' or 'null'?How to check if a variable is set in Bash?Read environment variables in Node.jsJavaScript check if variable exists (is defined/initialized)

After `ssh` without `-X` to a machine, is it possible to change `$DISPLAY` to make it work like `ssh -X`?

What is this diamond of every day?

What's the 'present simple' form of the word "нашла́" in 3rd person singular female?

Why does liquid water form when we exhale on a mirror?

Why restrict private health insurance?

Why do phishing e-mails use faked e-mail addresses instead of the real one?

Shifting between bemols (flats) and diesis (sharps)in the key signature

Getting the || sign while using Kurier

Is it a Cyclops number? "Nobody" knows!

How can I get players to focus on the story aspect of D&D?

How to draw dashed arc of a circle behind pyramid?

Doubts in understanding some concepts of potential energy

Having the player face themselves after the mid-game

Why does Central Limit Theorem break down in my simulation?

Minimizing with differential evolution

Outlet with 3 sets of wires

Called into a meeting and told we are being made redundant (laid off) and "not to share outside". Can I tell my partner?

Would an aboleth's Phantasmal Force lair action be affected by Counterspell, Dispel Magic, and/or Slow?

PTIJ: Why does only a Shor Tam ask at the Seder, and not a Shor Mu'ad?

How does Ehrenfest's theorem apply to the quantum harmonic oscillator?

What materials can be used to make a humanoid skin warm?

When Schnorr signatures are part of Bitcoin will it be possible validate each block with only one signature validation?

How to check whether module is loaded with custom configurations?

When a wind turbine does not produce enough electricity how does the power company compensate for the loss?



Use server generated variable in an included frontend js file



2019 Community Moderator ElectionHow can I upload files asynchronously?How do I check if an array includes an object in JavaScript?What is the scope of variables in JavaScript?What's the difference between using “let” and “var” to declare a variable in JavaScript?How do you check if a variable is an array in JavaScript?How do I include a JavaScript file in another JavaScript file?How to determine if variable is 'undefined' or 'null'?How to check if a variable is set in Bash?Read environment variables in Node.jsJavaScript check if variable exists (is defined/initialized)










2















node.js beginner here.
So I am writing an application where every second I get a number generated by the server and paste it via the app. Get to my index.pug file and I want to work with that number in an embed js file. How do I do that?



server.js



randomNumber = 4;
app.get('/',(req,res) =>
res.render('index', title: 'Number', count: randomNumber)
);


index.pug



html
head
title= title
body
h1= count
script(src="includes/client.js")


client.js



var chart = new CanvasJS.Chart("chartContainer", 
title:
text: count
,
);


Now how do I work with the randomNumber variable in the client.js file? What am I missing here? The application always tells me that count is not defined










share|improve this question




























    2















    node.js beginner here.
    So I am writing an application where every second I get a number generated by the server and paste it via the app. Get to my index.pug file and I want to work with that number in an embed js file. How do I do that?



    server.js



    randomNumber = 4;
    app.get('/',(req,res) =>
    res.render('index', title: 'Number', count: randomNumber)
    );


    index.pug



    html
    head
    title= title
    body
    h1= count
    script(src="includes/client.js")


    client.js



    var chart = new CanvasJS.Chart("chartContainer", 
    title:
    text: count
    ,
    );


    Now how do I work with the randomNumber variable in the client.js file? What am I missing here? The application always tells me that count is not defined










    share|improve this question


























      2












      2








      2








      node.js beginner here.
      So I am writing an application where every second I get a number generated by the server and paste it via the app. Get to my index.pug file and I want to work with that number in an embed js file. How do I do that?



      server.js



      randomNumber = 4;
      app.get('/',(req,res) =>
      res.render('index', title: 'Number', count: randomNumber)
      );


      index.pug



      html
      head
      title= title
      body
      h1= count
      script(src="includes/client.js")


      client.js



      var chart = new CanvasJS.Chart("chartContainer", 
      title:
      text: count
      ,
      );


      Now how do I work with the randomNumber variable in the client.js file? What am I missing here? The application always tells me that count is not defined










      share|improve this question
















      node.js beginner here.
      So I am writing an application where every second I get a number generated by the server and paste it via the app. Get to my index.pug file and I want to work with that number in an embed js file. How do I do that?



      server.js



      randomNumber = 4;
      app.get('/',(req,res) =>
      res.render('index', title: 'Number', count: randomNumber)
      );


      index.pug



      html
      head
      title= title
      body
      h1= count
      script(src="includes/client.js")


      client.js



      var chart = new CanvasJS.Chart("chartContainer", 
      title:
      text: count
      ,
      );


      Now how do I work with the randomNumber variable in the client.js file? What am I missing here? The application always tells me that count is not defined







      javascript node.js variables pug






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 6 at 15:56









      Abderrahim Soubai Elidrissi

      1,61011121




      1,61011121










      asked Mar 6 at 14:47









      EvolisEvolis

      701110




      701110






















          1 Answer
          1






          active

          oldest

          votes


















          1














          You need to keep in mind that there are three separate Javascript contexts in your request:



          1. The route (server.js),

          2. The view/template (index.pug), and

          3. The browser

          None of the above can access any of the others unless you explicitly pass variables through to the next one in the chain.



          You are explicitly passing title and count into the view/template in the res.render statement, and to then pass them one step further into the browser you need to use unescaped string interpolation and add it into a <script> tag as follows:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = !count;
          script(src="includes/client.js")


          If you want count to come through as a string, define it like this instead:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = "!count";
          script(src="includes/client.js")





          share|improve this answer























          • That was the mistake i made. I feel so stupid. Thanks for helping! Back to coding :)

            – Evolis
            Mar 6 at 17:20










          Your Answer






          StackExchange.ifUsing("editor", function ()
          StackExchange.using("externalEditor", function ()
          StackExchange.using("snippets", function ()
          StackExchange.snippets.init();
          );
          );
          , "code-snippets");

          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "1"
          ;
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function()
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled)
          StackExchange.using("snippets", function()
          createEditor();
          );

          else
          createEditor();

          );

          function createEditor()
          StackExchange.prepareEditor(
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader:
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          ,
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          );



          );













          draft saved

          draft discarded


















          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55025813%2fuse-server-generated-variable-in-an-included-frontend-js-file%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown

























          1 Answer
          1






          active

          oldest

          votes








          1 Answer
          1






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes









          1














          You need to keep in mind that there are three separate Javascript contexts in your request:



          1. The route (server.js),

          2. The view/template (index.pug), and

          3. The browser

          None of the above can access any of the others unless you explicitly pass variables through to the next one in the chain.



          You are explicitly passing title and count into the view/template in the res.render statement, and to then pass them one step further into the browser you need to use unescaped string interpolation and add it into a <script> tag as follows:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = !count;
          script(src="includes/client.js")


          If you want count to come through as a string, define it like this instead:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = "!count";
          script(src="includes/client.js")





          share|improve this answer























          • That was the mistake i made. I feel so stupid. Thanks for helping! Back to coding :)

            – Evolis
            Mar 6 at 17:20















          1














          You need to keep in mind that there are three separate Javascript contexts in your request:



          1. The route (server.js),

          2. The view/template (index.pug), and

          3. The browser

          None of the above can access any of the others unless you explicitly pass variables through to the next one in the chain.



          You are explicitly passing title and count into the view/template in the res.render statement, and to then pass them one step further into the browser you need to use unescaped string interpolation and add it into a <script> tag as follows:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = !count;
          script(src="includes/client.js")


          If you want count to come through as a string, define it like this instead:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = "!count";
          script(src="includes/client.js")





          share|improve this answer























          • That was the mistake i made. I feel so stupid. Thanks for helping! Back to coding :)

            – Evolis
            Mar 6 at 17:20













          1












          1








          1







          You need to keep in mind that there are three separate Javascript contexts in your request:



          1. The route (server.js),

          2. The view/template (index.pug), and

          3. The browser

          None of the above can access any of the others unless you explicitly pass variables through to the next one in the chain.



          You are explicitly passing title and count into the view/template in the res.render statement, and to then pass them one step further into the browser you need to use unescaped string interpolation and add it into a <script> tag as follows:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = !count;
          script(src="includes/client.js")


          If you want count to come through as a string, define it like this instead:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = "!count";
          script(src="includes/client.js")





          share|improve this answer













          You need to keep in mind that there are three separate Javascript contexts in your request:



          1. The route (server.js),

          2. The view/template (index.pug), and

          3. The browser

          None of the above can access any of the others unless you explicitly pass variables through to the next one in the chain.



          You are explicitly passing title and count into the view/template in the res.render statement, and to then pass them one step further into the browser you need to use unescaped string interpolation and add it into a <script> tag as follows:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = !count;
          script(src="includes/client.js")


          If you want count to come through as a string, define it like this instead:



          html
          head
          title= title
          body
          h1= count
          script.
          var count = "!count";
          script(src="includes/client.js")






          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Mar 6 at 15:02









          GrahamGraham

          3,751143760




          3,751143760












          • That was the mistake i made. I feel so stupid. Thanks for helping! Back to coding :)

            – Evolis
            Mar 6 at 17:20

















          • That was the mistake i made. I feel so stupid. Thanks for helping! Back to coding :)

            – Evolis
            Mar 6 at 17:20
















          That was the mistake i made. I feel so stupid. Thanks for helping! Back to coding :)

          – Evolis
          Mar 6 at 17:20





          That was the mistake i made. I feel so stupid. Thanks for helping! Back to coding :)

          – Evolis
          Mar 6 at 17:20



















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Stack Overflow!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid


          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.

          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function ()
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55025813%2fuse-server-generated-variable-in-an-included-frontend-js-file%23new-answer', 'question_page');

          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          1928 у кіно

          Захаров Федір Захарович

          Ель Греко