Reputation: 851
I want to pass a variable when rendering my view and use this variable in client side Javascript. I already got partially, but it's rendering wrong. I use PUG view (or Jade).
Example:
Server Side
res.render('xyzView', { xyzVal: 'my_values_xyz'});
Client Side: PUG view
extends ../layout
block content
script(type='text/javascript')
var getVal= #{xyzVal};
It's creating a tag <var></var>
on output instead var
only, like this:
//- other HTML tags and codes
//-..
//-..
<script type="text/javascript">
<var>getVal = 'my_values_xyz'</var> /// <<<<<====== THE PROBLEM IT'S HERE
</script>
The right way should be:
//- other HTML tags and codes
//-..
//-..
<script type="text/javascript">
var getVal = 'my_values_xyz';
</script>
How to fix that?
Upvotes: 1
Views: 1759
Reputation: 3161
Add a '.' after script like this:
script(type='text/javascript').
var getVal= #{xyzVal};
Upvotes: 2
Reputation: 11600
You want to add plain text
extends ../layout
block content
script(type='text/javascript')
| var getVal= #{xyzVal};
Upvotes: 2