我正在尝试设置html元素的样式,我读到我必须这样做:
if ()
然后在我的hbs文件中,我写了
bid: {
popUpContainerDisplay: "none",
popUpDisplay: Ember.computed('bid.popUpContainerDisplay', function() {
return Ember.String.htmlSafe("display: " + this.get('bid.popUpContainerDisplay'));
})
},
然而,这给了我一些错误:
<div id="popUpContainer" style={{bid.popUpDisplay}}>
我做错了什么?感谢。
答案 0 :(得分:2)
在您尝试使用它的对象中不存在get
方法。
该get
方法来自Ember.Observable,由Ember.Object类使用。你需要做的是将bid
属性声明为Ember.Object,使用extend或create,如下所示:
bid: Ember.Object.extend({
popUpContainerDisplay: "none",
popUpDisplay: Ember.computed('bid.popUpContainerDisplay', function() {
return Ember.String.htmlSafe("display: " + this.get('bid.popUpContainerDisplay'));
})
})
答案 1 :(得分:0)
您需要将计算属性放在bid
之外。
bid: {
popUpContainerDisplay: "none"
},
popUpDisplay: Ember.computed('bid.popUpContainerDisplay', function() {
return Ember.String.htmlSafe("display: " + this.get('bid.popUpContainerDisplay'));
})