私はジェイドを使用していますが、ジェイドが私のスペースを「食べる」ことを除いて、すべてがクールです。
たとえば、HTMLの場合:
<b>Hello</b> <b>World</b>
または
<b>Hello</b>
<b>World</b>
「Hello」と「World」の間にスペースがあります。
しかし、ジェイドに変換するときは
b Hello
b World
HTMLとしてレンダリングすると、スペースがなくなります。お気に入り:
<b>Hello</b><b>World</b>
Jadeテンプレートに
を追加する必要がありますか、または生成されたHTMLに通常のスペースを取得する方法はありますか?
これはそれを行う必要があります:
b Hello
| World
残念ながら、このHTML出力はChromeで私のマシンで生成されます:
<b>
Hello
World</b>
しかし、最終的には次のようになります。
最後に
b Hello
b World
...それも行います。
もちろん、2つの同じタグが次々にある場合、単純にそれらをマージできます。
_b Hello World
_
ただし、2つの異なる兄弟タグがあり、それらの間にスペースが必要な場合は、 piping を使用してそれらの間にスペースを出力できます。
例えば:
_b Hello
| <-- 2 spaces after the pipe
i World
_
タグのコンテンツ/パイピングテキストを指定するときは、実際のテキストコンテンツの前に空白が追加されることに注意してください。この空白は出力されません。したがって、実際には、空白をパイプするには_|
_文字とそれに続くtwoスペースが必要です。
末尾のスペースが保持されない環境にいる場合は、代わりに次を使用できます。
_b Hello
=" "
i World
_
_=
_はJavaScript式を評価し、結果を出力します。
また、_
_はnotHTMLのスペースと同じではないことに注意してください。使用する正しいHTMLエンティティは_ 
_(または16進数が好きな場合は_ 
_)です。
_
_はnon-breakingspace。文字コードは160(_ 
_)です。違いは、通常のスペースが使用されている場合、複数のスペースが単一のスペースとして表示され、行がオーバーフローした場合、テキストは次の行に継続することです。改行しないスペースが使用されている場合、行は折り返されません。
これは例を挙げて説明するのが最適です。
(Note the scroll bar at the bottom.)
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    (Note there is no scroll bar because all spaces are concatenated into one.)
*これは、CSS _white-space
_ プロパティでオーバーライドできます。 _<pre>
_などの一部の要素は、デフォルトですべての空白と行末を表示します。
明示的な空白のミックスインを作成しました。
mixin space()
| !{' '}
必要なことは次のとおりです。
b Hello
+space
b World
このようにしたい場合
<b>Hello</b> <b>World</b>
これを使うべきです
b Hello
|
b World
より簡単な方法を次に示します。
b Hello #{' '}
b world