0

我正在使用快递和翡翠。当我传递包含链接的变量时,我在 url 的前面和末尾都没有定义。这是什么问题,我该如何解决?

与此处相同的问题: Express image upload and view in jam 但那里没有回答。

玉码:

block content
h1= title
p Your photos
#photos
img(src=#{purl})
p #{photo.title}

渲染代码

res.render('./user/show', { title: 'photos',photo: photo, purl: purl)});

purl 是链接的变量,当我控制台日志显示在渲染上方时,它应该出现并且 photo.title 出现得太正常了。

更新

这是一个 JADE 问题,因为 EJS 一切都很好......猜猜一个小问题我将不得不切换......如果有人提出解决方案,不客气。

4

1 回答 1

1

首先,在res.render()添加之前console.log(purl);

您想排除变量在到达 Jade 模板之前不是未定义的。

在你的玉中,你的图像 src 不需要#{}purl 变量。试试这个:

img(src=purl)

#{}当您在文本字符串中并想要引用 javascript 变量时才需要。

如果你真的想,它可以写成img(src='#{purl}')

你的段落也可以写成:

p= photo.title

其中=意味着以下内容被解释为javascript。不需要#{}

如果您想使用#{}魅力之类的作品将文字与照片标题混合在一起。

p #{photo.title} lorem ipsum
于 2013-03-12T01:56:42.740 回答