我是Ember的新手,这是一个简单的代码,让箭头按钮增加和减少amount
属性的值:
export default Ember.View.extend({
afterRenderEvent: function() {
$('.spinner .increase').on('click', function() {
this.incrementProperty('amount');
});
$('.spinner .decrese').on('click', function() {
this.decrementProperty('amount');
});
},
template: ProductView
});
问题是this
没有引用Ember.View对象,但函数的范围,如何解决这个问题?
另外我认为使用jQuery操纵元素不是贪婪的方式。我应该为每个箭头按钮创建视图吗?
答案 0 :(得分:-1)
维护对原始上下文的引用,然后在闭包中使用它应该可以解决您的问题:
export default Ember.View.extend({
afterRenderEvent: function() {
var self = this;
$('.spinner .increase').on('click', function() {
self.incrementProperty('amount');
});
$('.spinner .decrese').on('click', function() {
self.decrementProperty('amount');
});
},
template: ProductView
});