2012-05-09 62 views
39

我有這樣的jade代碼:在該行的末尾添加一個空白的玉

p 
    | Avatar hosted by 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 

的問題是,它呈現給

<p>Avatar hosted by<a href="http://www.gravatar.com/" target="_blank">Gravatar</a></p> 

看起來像「阿凡達通過Gravatar託管」。

無論我在文本行末尾添加多少空格,它仍然是這樣的。 Docs無法幫助我,我無法想象這是一個不常見的問題。

回答

53

如果你不想在你的代碼這個內嵌HTML或HTML實體是你可以做什麼:

p 
    | Avatar hosted by 
    = ' ' 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 

或者這是較短

p= 'Avatar hosted by ' 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 

最乾淨的大概是這樣的

p Avatar hosted by #{''} 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 
+3

這應該是被接受的答案。 – Kevin

1

編輯:
作爲jmar777指出,最近玉版本應該兌現尾隨空白see here。太棒了,我可能會在未來的項目上再次嘗試玉石。

編輯: 已更新jade解析器的鏈接。 Original link是玉1.11。

39

您使用哪個版本的玉器?我只用'by'測試了一個空間(0.25.0),並且它工作正常。

其他選項是:

p 
    | Avatar hosted by&nbsp; 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 

p 
    | Avatar hosted by 
    | <a href='http://www.gravatar.com/' target='_blank'>Gravatar</a> 
+0

看起來我沒有在'package.json'中添加版本約束。 – Lanbo

+2

很高興知道最近的版本不會去除文本塊末尾的所有空格和換行符。 –

+4

它可能不會剝離,但您的編輯可能。如果有更簡單的方法,這將是很好的。 – Joe

6

你確定這不是你的編輯器?我使用Komodo,它被設置爲在保存時去除尾隨空白。當我保存文件時,它正在刪除文本行末尾的空格。我的文字和鏈接之間沒有空格,讓我感到非常緊張,直到我明白爲止。我改變了Komodo的設置(首選項 - >編輯 - >保存選項)以取消選中條帶尾隨空白,問題就消失了。

+3

這也是我的問題。在Web Storm中禁用此選項將轉到首選項並搜索尾部。在頁面的底部,在其他下方有一個選項「在保存上去掉尾隨空格」。 –

2

我在新行使用space變量。此:

p 
    | You must follow 
    =space 
    a(href=default_url) this link 
17

Jade現在支持插入內聯標記。

p this is #[strong test] of how jade will treat #[i #[u inline tags]]... like #[a(href="/") anchor tags] and #[+a() mixins]. 

http://jade-lang.com/reference/interpolation/

+0

這應該是新接受的答案。 –

0

快速和乾淨的解決方案是使用此語法:第二文本行

p 
    | Avatar hosted by 
    | 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 

注意空格|後。這將在上一行的文本之後添加一個空格(並且如果忘記添加,也會吐出一個令人討厭的錯誤!)。

到目前爲止,這是最乾淨的選擇,在我看來。

0

我正在使用豎琴,而ÓscarGómez的solution with two pipes會拋出一個錯誤,雖然它看起來非常優雅。

感謝ДаниилПронин和肖恩Gravener,我發現這些解決方案爲我工作:

#{' '}
!{' '}

= " "
p 
    | Avatar hosted by #{' '} 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 

p 
    | Avatar hosted by 
    = ' ' 
    a(href='http://www.gravatar.com/', target='_blank') Gravatar 

此外,如果你有一種相反的情況: 跨度文本#{REF + [」「]}

這裏有更多關於帕格(玉)語法插補: https://pugjs.org/language/interpolation.html

相關問題