在metrojs和bootstrap 3中只显示50个字符

Show only 50 characters in meteorjs and bootstrap 3

本文关键字:显示 50个 字符 metrojs bootstrap      更新时间:2023-10-06

我的应用程序使用Meteorjs和bootstrap 3。我对这两件事都很陌生。我正在做的是从数据库中获取一些对象,并将它们呈现在表中。但问题是,如果对象文本很长,则会增加表的行大小,从而影响所有模板结构。我可以通过隐藏溢出来做到这一点,但这不是正确的方法。我是这样做的

{{#each questions}}
    <tr>
        <td>
<a href="#" data-id="{{_id}}" class="edit"> {{question_text}}</a>
         </td>
    </tr>
{{/each}}

Template.questions.questions = function () {
    questions= Meteor.questions.find({topic_id: Session.get("currentTopicId")});
    return questions
}

我只想在TD单元格中显示问题的前50个字符,后面跟着几个点。我怎么能在流星中做到这一点。在呈现之前,我需要拆分文本吗?或者告诉我如何在模板中分割question_text,或者有没有只显示文本前50个字符的内置方法。

我的下一个查询是当我打印或执行console.log(问题)时,它向我显示了许多字段,如集合、查询和其他一些内容,其中查询、结果和文档都包含对象问题。如何从响应对象中获取这些问题对象。意味着我想在这些问题对象上迭代一个循环。我怎么能那样做

简单地说,我想在检索到的对象上迭代循环。

有人能用handlesjs.js发布一个完整的例子吗

您可以使用助手来完成此操作。

 Handlebars.registerHelper('trimString', function(passedString) {
      return new Handlebars.SafeString(passedString.substring(0,50))
   });
{{trimstring question_text}}

在CSS3的世界里,JS中的修剪文本不再是这样。我鼓励你使用CSS3。好处?

  • 悬停后的修剪文本以完整格式显示在提示中
  • 与元素宽度相关的动态修剪(在这种情况下为td单元)
  • 更大的灵活性
.修剪{溢出:隐藏;/*需要使文本溢出工作*/文本溢出:省略号;/*添加"…"*/宽度:9em;/*可以像%一样固定或灵活*/空白:nowrap;/*如果文本不适合元素,请不要换行*/}