0

Jade の条件付きブロック内に変数を設定しています。2 つの異なるタイプの評価のうち、ゼロ、1 つ、または 2 つのオブジェクトが多数あります。各オブジェクトは 2 つの<span>タグを取得します。評価が存在しない場合、span タグは空白のままになります。それ以外の場合は、適切な評価を span タグに挿入します。DOM のさらに下で将来使用するための変数が必要です。

ここで次の Jade コードを試すことができます:
http://cssdeck.com/labs/a5rru5vj

編集:以下の簡単な解決策、他の人に役立つ場合に備えてこれを残します:D

//Jade
- var demo = [{rating1:'2.5'}, {rating2:3.333333}]
each obj in demo
  if(obj.rating1 !== undefined)
    - var r1 = obj.rating1 || ""
    = r1 
  else
    - var r1 = ""
    = r1
  if(obj.rating2 !== undefined)
    - var r2 = String(obj.rating2).slice(0,3) 
    = r2
  else
    - var r2 = ""
    = r2
  div.objIndex(data-obj=JSON.stringify(obj))
    span.myRating= r1
    span.googleRating= r2

// output html (with whitespace cleaned up)
// Note that Jade is writing the variables into the output, why, and how to avoid this?
<body>
  2.5
  <div data-obj="{&quot;rating1&quot;:&quot;2.5&quot;}" class="objIndex">
    <span class="myRating">
      2.5
    </span>
    <span class="googleRating">
    </span>
  </div>
    3.3
    <div data-obj="{&quot;rating2&quot;:3.333333}" class="objIndex">
      <span class="myRating">
      </span>
      <span class="googleRating">
        3.3
      </span>
  </div>
</body>
4

1 に答える 1

0

と行が原因です= r1= r2上記のサンプルコードで再現されていない何かを修正しようとしているものを最近追加しました。

于 2013-07-22T21:20:36.800 に答える