admin管理员组

文章数量:1417550

Is there a logical not for handlebars bindings with Ember.js?

Suppose I have a ember view that I want to bind to a value

{{Ember.Button disabledBinding="view.controller.some_value"}}

I only want the button to be disabled if some_value is false. The code above makes it disabled if some_value is true.

One approach to fixing this would be to have a plementary puted value on the controller. excuse my coffeescript

opposite_some_value: (->
    if @get('some_value') == true
        return false
    else
        return true
).property 'some_value'

But this seems clunky.

Is there a logical not for handlebars bindings with Ember.js?

Suppose I have a ember view that I want to bind to a value

{{Ember.Button disabledBinding="view.controller.some_value"}}

I only want the button to be disabled if some_value is false. The code above makes it disabled if some_value is true.

One approach to fixing this would be to have a plementary puted value on the controller. excuse my coffeescript

opposite_some_value: (->
    if @get('some_value') == true
        return false
    else
        return true
).property 'some_value'

But this seems clunky.

Share Improve this question asked Jul 26, 2012 at 16:16 wmarbutwmarbut 4,7057 gold badges45 silver badges76 bronze badges 1
  • Handlebars supports the logical not in if statements through the plementary unless statement. handlebarsjs. – wmarbut Commented Aug 6, 2012 at 18:57
Add a ment  | 

1 Answer 1

Reset to default 9

Creating a property with the inverted value is the way to go. You can use binding helper for this: oppositeValueBinding: Ember.Binding.not('some_value').

Also note the Ember.Button is deprecated and you should use the {{action}} helper instead.

UPDATE

In newer versions of Ember.js, it's oppositeValue: Ember.puted.not('some_value').

本文标签: javascriptEmberjs Handlebars bindings logical notStack Overflow