【问题标题】:variable concatenating with String in meteor在流星中与字符串连接的变量
【发布时间】:2016-07-23 15:30:53
【问题描述】:

有什么方法可以将字符串与 Meteor 模板中的变量连接起来,就像其他框架一样,即角度 {{'my name is' +name}} 我知道它可以通过助手来完成。但我找到了更好的方法,或者至少,更简单的方法来实现这一点。我也试过value="'my name is' {{name}}",但它总是把名字当作字符串,输出是"my name is name"

编辑: 这是我在模板中的原始代码行

<template name="editCategory">
  <!-- Page heading -->

  {{> pageHeading title="my name is {{name}}" category='Catalog' }}


</template>

名称值来自这里

Template.editCategory.helpers({
    name: function() {
        return this.translation[Object.keys(this.translation)[0]].name;
    }
});

我已经在模板中检查了名称值 {{name }} 并且工作正常

【问题讨论】:

  • 为什么不能直接使用my name is {{name}}
  • 我已经在标题中说过我需要它,即 title="{{my string + my varriable}}"
  • 这在标题属性中也是可能的:也许您添加的额外引号导致了问题?
  • 您能添加您的确切模板代码吗?
  • @Areca 我添加了原始代码

标签: meteor handlebars.js


【解决方案1】:

您已经有一个助手,为什么不从助手返回文本“我的名字是”?

Template.editCategory.helpers({
    name: function() {
        return 'my name is' + this.translation[Object.keys(this.translation)[0]].name;
    }
});

在模板中:

{{> pageHeading title="{{name}}" category='Catalog' }}

【讨论】:

  • 我刚刚通过了最少的代码,我需要在该模板中的 50 个不同位置使用不同前缀和后缀的名称 :)
【解决方案2】:

您可以使用Blaze。下面是一个示例帮助器,

{{> post}}

Template.foo.helpers({post: function () {
  return Template[this.postName];
}); 

template_registerhelper的文档

编辑:

还有之前提交的答案here

【讨论】:

  • 你没有读过我提到的问题“我知道它可以通过助手来完成。”
  • @AbdulHameed 使用助手是一个好方法,因为您想在 50 个不同的地方使用它。
猜你喜欢
  • 2019-04-09
  • 1970-01-01
  • 2018-01-02
  • 2014-07-20
  • 1970-01-01
  • 2012-06-24
  • 1970-01-01
  • 2015-09-07
  • 1970-01-01
相关资源
最近更新 更多