2015-12-05 87 views
1

我正在使用IBM Bluemix爲學校項目製作Web服務。如何在Jade模板中使用Javascript變量?

我的項目需要從API請求一個JSON,所以我可以使用它提供的數據。

我希望Jade模板使用來自API的數據編寫字符串,但我無法使用在我的.js文件中定義的變量。

例如,我想編寫

「你的匯率是」 + CotacaoDolar

在玉文件的H1現場,作爲「CotacaoDolar」一個變量的定義.js文件。

這怎麼辦?

這裏是我的.js文件:

/*eslint-env node*/ 
 

 
//------------------------------------------------------------------------------ 
 
// node.js starter application for Bluemix 
 
//------------------------------------------------------------------------------ 
 

 
// HTTP request - duas alternativas 
 
var http = require('http'); 
 
var request = require('request'); 
 

 
// cfenv provides access to your Cloud Foundry environment 
 
// for more info, see: https://www.npmjs.com/package/cfenv 
 
var cfenv = require('cfenv'); 
 

 
//chama o express, que abre o servidor 
 
var express = require('express'); 
 

 
// create a new express server 
 
var app = express(); 
 

 
// serve the files out of ./public as our main files 
 
app.use(express.static(__dirname + '/public')); 
 

 
// get the app environment from Cloud Foundry 
 
var appEnv = cfenv.getAppEnv(); 
 

 
// start server on the specified port and binding host 
 
app.listen(appEnv.port, '0.0.0.0', function() { 
 
    // print a message when the server starts listening 
 
    console.log("server starting on " + appEnv.url); 
 
}); 
 

 

 
app.get('/home1', function (req,res) { 
 
    http.get('http://developers.agenciaideias.com.br/cotacoes/json', function (res2) { 
 
     var body = ''; 
 
     res2.on('data', function (chunk) { 
 
      body += chunk; 
 
     }); 
 
     res2.on('end', function() { 
 
      var json = JSON.parse(body); 
 
      var cotacao = json["bovespa"]["cotacao"]; 
 
      var CotacaoDolar = json["dolar"]["cotacao"]; 
 
      var VariacaoDolar = json["dolar"]["variacao"]; 
 
      var CotacaoEuro = json["euro"]["cotacao"]; 
 
      var VariacaoEuro = json["euro"]["variacao"]; 
 
      var Atualizacao = json["atualizacao"]; 
 
\t \t \t 
 
\t \t \t res.render('cotacao_response.jade', { 
 
       message: 'A taxa de câmbio é de '+CotacaoDolar+' R$.Esse valor corresponde ao preço de venda em '+Atualizacao 
 
      }); 
 
     }); 
 
    }); 
 
});

這裏是我的.jade文件:

doctype html 
 
html(lang="en") 
 
    head 
 
    title Cotação 
 
    link(rel='stylesheet',href='stylesheets/style.css') 
 
    body 
 
    h1!=message 
 
    #container.col 
 
     p Seu câmbio foi. 
 
     p. 
 
    

回答

3

你只需要在傳遞一個物體w母雞渲染包含變量的模板。然後通過引用Jade模板中的鍵來訪問該值。因此,要發送的變量「CotacaoDolar」你會在對象傳遞這樣:

res2.render('cotacao_response.jade', { 
    'CotacaoDolar': CotacaoDolar 
}); 

然後在你的玉模板,你可以創建像H1:

h1 Your exchange rate is #{CotacaoDolar} 
相關問題