簡體   English   中英

使用助手的meteor條件html

[英]meteor conditional html using helpers

新手問題在這里...我正在嘗試獲得一個簡單的流星應用程序,但我很難得到我的一個輔助函數調用(它似乎被忽略)。

基本上我會使用稍微不同的html調用,具體取決於我是否使用了集合中的第一個項目。

我已經為從0開始的集合(seq)添加了一個序列號,在模板上創建了一個輔助函數

Template.carousel.helpers({
  sponsors: function() {
    return sponsorDocs.find();
  },
  first_sponsor: function() {
    console.log(this);
    var value = (this.seq === 0);
    if(value) {
      console.log("Got first sponsor");
    }
    else {
      console.log("Not the first sponsor");
    }

    return value;
  }
});

並嘗試在模板中使用它如下..

<template name="carousel">
<!-- Carousel
================================================== -->
<div id="tbCarousel" class="carousel slide">
  <!-- Indicators -->
  <ol class="carousel-indicators">
    {{#each sponsors}}
      {{#if first_sponsor}}
        <li data-target="#tbCarousel" data-slide-to={{seq}} class= "active" ></li> 
      {{else}}
        <li data-target="#tbCarousel" data-slide-to={{seq}} ></li> 
      {{/if}}
    {{/each}}
  </ol>........

現在,每個都工作正常,但first_sponsor調用似乎永遠不會發生(我從來沒有看到控制台日志輸出...

知道為什么嗎? 有沒有更好的方法來做到這一點(看起來有點笨重)。

彼得。

為每個li放一些視覺效果。 會出現1,2或兩者嗎?

另一種方法是讓助手返回類名(活動或空白),class =“{{sponsor_class}}”添加:我們可能知道正在采取錯誤路徑,然后質疑原因。 一個常見的原因是JavaScript失敗了。 你知道你的網絡瀏覽器控制台嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM