タイトルがすべてを物語っていますが、true または false を返す hasAccess() 関数があるとしましょう
次のような ExtJS 4 ツールバー ボタン構成で使用します。
{
id: 'btnEditMyStuff',
ref: 'edit_my_stuff',
xtype: 'button',
text: 'Edit',
hidden: !( MyUser.hasAccessTo('EditMystuff') )
}
Firebug でテストしたときにこの式が正しく false と評価されたとしても、私のボタンは表示されません。
しかし、これで:
{
id: 'btnEditMyStuff',
ref: 'edit_my_stuff',
xtype: 'button',
text: 'Edit',
hidden: ( MyUser.hasAccessTo('EditMystuff') == false )
}
ボタンが正しく表示されます。
問題は次のとおりです。違いは何ですか。
ここで見落としている不思議な比較演算子/関数評価の優先順位は何ですか?
昨日よりもぐっすり寝たい。前もって感謝します。
編集 :
hidden: !( MyUser.hasAccessTo('EditMystuff') ) // does not work
hidden: (!MyUser.hasAccessTo('EditMystuff') ) // works
それでも私は完全に理解したいと切望しています。