2013-09-04 4 views
5

Есть ли способ, с помощью шаблона express + swig для nodeJS передать переменные с серверной стороны на javascript на стороне клиента? Я знаю, что это можно сделать в Jade, но я предпочел бы использовать механизм шаблонов, который более близко напоминает HTML. Спасибо за помощь, ребята!nodeJS + Swig шаблон, передающий переменную в javascript

ответ

9

OK Я предполагаю, что вы можете настроить свой курьер с помощью консолидации.swig, если нет, прочитайте эту ссылку (http://tinyurl.com/kcs8kvy). Ну, я не нашел прямого способа передать значения переменных клиенту javascript, но я нашел обходное решение.

, например, вы отправляете объект в маршруте на экспресс:

app.get("/", function(req, res){ 
    var myUser = { name: "Obama" }; 
    res.render("index", {user: myUser}); 
}); 

затем в файле index.html вы можете создать тег сценария:

<html>

<body> 
<script> 
    var username = "{{user.name}}"; 
</script> 

<script src="whatever.js"></script> 
</body> 

</html>

, а затем в вашем Файл any.js будет иметь переменную имени пользователя с ее правильным значением. Надеюсь, что это поможет вам.

+0

как обрабатывать сложную итерацию массива json! –

+0

Когда я делаю только {{user}} iam получает [объект объекта], но когда я делаю json.stringify на сервере, он дает мне «Uncaught SyntaxError: Неожиданный токен и» даже после {{user | json_encode}} –

Смежные вопросы