자바 스크립트 데이터를 템플릿에 직접 삽입하려면 합법적 인 자바 스크립트 문자열을 만들어 해당 문자열을 템플릿에 전달해야합니다. 템플리트에 도달하기 전에 합법적 인 Javscript 여야합니다. JSON.stringify()
과 같은 것을 사용하면 합법적 인 자바 스크립트를 만드는 것과 같은 방법 일뿐만 아니라 그 방법이 아닙니다. 여기
는 HTML 파일에 일부 자바 스크립트 데이터 구조를 삽입 광산의 핸들 템플릿을 먹기 :
<script>
// temperature data - array of arrays of the form [dateTime, atticTemp, outsideTemp]
var temperatureData = {{{temperatures}}};
// onOffData is an array of [dateTime, str] - where str is "on" or "off"
var onOffData = {{{onOffData}}};
</script>
이 그리고, 템플릿에 전달되는 데이터는 다음과 같습니다 (두 메소드 호출은 JSON 문자열을 반환) :
app.get('/chart', function(req, res) {
var tempData = {
temperatures: data.getTemperatureDataSmallJSON(),
onOffData: data.getFanOnOffDataSmallJSON(),
units: req.cookies.temperatureUnits
};
res.render('chart', tempData);
});
이이처럼 보이는 HTML 파일의 조각을 초래
:
<script>
// temperature data - array of arrays of the form [dateTime, atticTemp, outsideTemp]
var temperatureData = [[1412752013861,22.19,16.35],[1412753505591,22,16.15],[1412754286561,21.85,15.94]];
// onOffData is an array of [dateTime, str] - where str is "on" or "off"
var onOffData = [[1411786960889,"off"],[1411790853867,"off"]];
</script>
데이터를 JSON으로 변환하고 해당 JSON 문자열을 템플릿에 전달합니다.
핸들 막대 템플릿은 JavaScript가 아닙니다. JavaScript를 만들기 위해 * JavaScript를 사용하고 싶다면 먼저 텍스트로 렌더링 한 다음 결과를 평가해야합니다. – meagar
그 일을하는 가장 좋은 방법은 무엇입니까? JSON.stringify ({{{data}}}) 같은 문제가있는 것 같습니다. – wittythotha