yuя*_*uяi 6 coffeescript ember.js
如果
!Ember.isEmpty @get('a') #-> true
Run Code Online (Sandbox Code Playgroud)
和
!Ember.isEmpty @get('b') #-> false
Run Code Online (Sandbox Code Playgroud)
那么为什么
!Ember.isEmpty @get('a') and !Ember.isEmpty @get('b') #-> true
Run Code Online (Sandbox Code Playgroud)
或者是我的CoffeeScript?
你遇到的问题是Coffeescript的优先级.你在javascript中的代码是:
!Ember.isEmpty(this.get('a') && !Ember.isEmpty(this.get('b')));
Run Code Online (Sandbox Code Playgroud)
您需要添加parens以使操作顺序更加明确:
!Ember.isEmpty(@get('a')) and !Ember.isEmpty(@get('b'))
Run Code Online (Sandbox Code Playgroud)
所以在javascript中它是:
!Ember.isEmpty(this.get('a')) && !Ember.isEmpty(this.get('b'));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |