繁体   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