在Jade Template中传递包含url的变量
Passing variables containing urls in Jade Template
当我传入一个对象时,我在Jade中正确显示链接有问题。
// Story object
{
"_id" : ObjectId("55db6e1710976558828f8053"),
"author" : ObjectId("55d7a215a3695c620c586f12"),
"link" : "benjelnews.com",
"title" : "hello",
"updated" : ISODate("2015-08-24T19:18:47.589Z"),
"created" : ISODate("2015-08-24T19:18:47.589Z"),
"comments" : [ ],
"__v" : 0
}
// App.js
res.render('news', {data: story});
// News.jade
a(href=data.link)=data.title
但是,链接一直显示为"localhost:4000/benjelnews.com"有人能解释为什么我的本地服务器地址一直显示,以及我如何正确配置我的Express或Jade模板来显示正确的格式,这只是"benjelnews.com"
Jade将您的模板呈现为以下HTML:
<a href="benjelnews.com">hello</a>
由于benjelnews.com
不是有效的URL(它不以方案开始,如http://
或https://
),您的浏览器将其解释为本地web服务器上的相对路径(显然是在http://localhost:4000
上运行)。
如果你所有的链接都是这样的,你可以在你的模板中添加方案:
a(href = 'http://' + data.link)= data.title
(并希望所有链接都是纯HTTP而不是HTTPS)
理想情况下,您的数据库应该包含适当的URL。
相关文章:
- 传递包含'%的参数'在URL中
- 正在尝试将标题标记添加到mailto链接,正文中包含URL
- 如果当前url包含某些内容,请采取措施
- 当jQuery ajax请求中包含#时,URL中断
- 如何检查 iframe 中的锚标记是否包含 URL
- 无法使用包含 url 变量的 javascript 函数刷新到页面底部
- Regex检测包含URL或文件扩展名的字符串
- jQuery选择包含url的链接
- 如何包含url的所有结尾,除了使用Javascript正则表达式的特定结尾
- 如果数据包含URL, Javascript将无法解析JSON
- 通过解析包含url的文本生成HTML锚
- 在Jade Template中传递包含url的变量
- Javascript警告消息包含URL
- 确定用户输入包含URL
- 如何检查字符串是否包含“url”或“链接”把它找回来
- 如何查找文本是否包含url字符串
- 检查字符串是否不包含URL段并进行匹配
- 检测字符串是否包含url图像
- 在html文件中包含URL的内容
- jQuery -检查输入内容是否包含url在keyup上