我是nodejs的新手。尝试使用vash模板将一些引导数据(登录用户)从nodejs服务器发送回带有索引页的客户端。需要客户端上的引导数据来根据用户是否登录来启用/禁用某些选项。
server.js如下所示:
app.get("*", function(req, res) {
res.render("index", {
title: "Page title",
bootstrappedUser: req.user
});
});index.vash
@html.extend('layout', function(model) {
@html.block("scripts", function(model){
@if(model.bootstrappedUser) {
@{
var a = model.bootstrappedUser;
}
<script type="text/javascript">
window.bootstrappedUser = JSON.stringify(@a);
</script>
}
})
})但这会在下面的stringify函数上的客户端html中产生一个"UncaughtSyntaxError:意外的标识符“:
<script type="text/javascript">
window.bootstrappedUser = JSON.stringify([object Object]);
</script>我试图在Github上查找Vash page,但实际上没有关于使用vash的脚本块的文档。我是否在“index.vash”中使用了正确的语法,或者是我遗漏了一些vash字符串插值?任何帮助都将不胜感激。
发布于 2015-06-04 22:33:35
您必须从nodejs通过JSON.stringfy(obj)发送数据,然后
<script>
var test = @html.raw(@model)
</script>均值
server.js
app.get("*", function(req, res) {
res.render("index", {
title: "Page title",
bootstrappedUser: JSON.stringfy(req.user)
});
});index.vash
@html.extend('layout', function(model) {
@html.block("scripts", function(model){
@if(model.bootstrappedUser) {
@{
var a = model.bootstrappedUser;
}
<script type="text/javascript">
window.bootstrappedUser = @html.raw(a);
</script>
}
})
})https://stackoverflow.com/questions/28334618
复制相似问题