javascript - 在 Ember.js 中将字符串组合到绑定(bind)变量

标签 javascript ember.js handlebars.js

我需要在我的 Ember.js/Handlebars 模板中包含图像。

我正在使用<img {{bindAttr src="short_name"}}>如果图像恰好是 Short_name 的值并且位于根目录中,那么这将起作用。

但是,我需要像这样构造 img src:

'/images/avatars' + short_name + '_avatar.jpg'

这将如何在 ember/handlebars 中实现?

最佳答案

考虑到short_name不会改变,你可以这样做:

<img src="/images/avatars{{unbound short_name}}_avatar.jpg">

但是如果 short_name 变化很大,您应该使用计算属性,如下所示:

var SomeModel = Ember.Object.extend({
  shortName: null,
  imgSrc: function() {
    var shortName = this.get('shortName');
    return '/images/avatars' + shortName + '_avatar.jpg';
  }.property('shortName')
});

然后在您的模板上:

<img {{bindAttr src="imgSrc"}}>

关于javascript - 在 Ember.js 中将字符串组合到绑定(bind)变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17865482/

相关文章:

angularjs - 具有渐进增强功能的基于混合页面/单页的网络应用程序(Angularjs、Ember.js)?

javascript - ES6 的 Handlebars 助手

mysql - 插入行导致 404

Javascript 将 switch 的大小写绑定(bind)到 html 按钮

javascript - 从 EmberJs 组件进行 ajax 调用的正确方法?

javascript - 如何在 yii2 中使用 php jquery?

javascript - EmberJS : How to provide a specific URL for a model in ember-data RESTAdapter?

javascript - 如何在 emberjs View 上运行自定义 JavaScript?

javascript - 禁用输入数据的动态宽度

javascript - 如何在 PHP 中从下一个 SQL 结果行检索值?