如何在脚本标签内使用ejs

时间:2020-05-28 15:55:08

标签: javascript sql node.js express ejs

我在Node.js / Express,ejs和Postgresql中工作。

我正在尝试插入从请求中获得的<script></script>标签EJS代码。

尝试这样做,但这是行不通的:

<% avg_t.rows.forEach(function(avg){%>
<script type="text/javascript">
var first = JSON.stringify('<%= avg.mark %>');
console.log(first);
</script>
<%} ) %>

我在其中执行请求的Node.js代码:

const graphic1 = (req,res)=> {

    const db = new pg.Pool(te_role.client)

    db.connect(function(err, client, done){
        console.log("")
        if(err){
            return console.error('canceled')
        }

        client.query(teacher_role.show_avg,[log2,req.body.disce,req.body.numb,req.body.lett], function(err, result){
            return_data.avg_t =result 
           if (err){
           res.end()
           return console.error("canceled")
           }
           done()
        res.render('inside',{avg_t:return_data.avg_t})

})
})
}
app.get('/inside',urlencodedParser,db_te.get_graphic1)

当然还有我尝试的完整EJS代码:

<% avg_t.rows.forEach(function(avg){%>

  <script type="text/javascript">
    var first = JSON.stringify('<%= avg.mark %>');
    console.log(first);
    google.charts.load('current', {
      'packages': ['corechart']
    });
    google.charts.setOnLoadCallback(drawChart);

    function drawChart() {
      var data = new google.visualization.DataTable();
      data.addColumn('string', 'Topping');
      data.addColumn('number', 'Slices');
      data.addRows([
        ['Mushrooms', first],
        ['Onions', 1],
      ]);
      var barchart_options = {
        title: 'Barchart: How Much Pizza I Ate Last 
        Night ',width:400,height:300,legend: '
        none '};
        var barchart = new google.visualization.BarChart(document.getElementById('barchart_div'));
        barchart.draw(data, barchart_options);
      }
  </script>

<%} ) %>

0 个答案:

没有答案