我試圖創建自定義屬性值對象的屬性值(基於函數的條件)對我的分機的對象,而不是僅指定一個值。的Ext JS 4:自定義基於條件
實施例1:
舊代碼(工作)
this.buttons = [
{
text: 'Save',
新代碼(不工作)
this.buttons = [
{
text: function() {
return 'Save X';
},
實施例2:
舊代碼(工作)
}, {
width: 270,
labelAlign: 'right',
xtype: 'textfield',
name: 'user_id',
fieldLabel: 'User ID',
hidden: true
}]
新代碼(不工作)
}, {
width: 270,
labelAlign: 'right',
xtype: 'textfield',
name: 'user_id',
fieldLabel: 'User ID',
hidden: function() { return true; }
}]
例3:
忽略整個文本框對象(例如懶惰)完全基於一個條件:
}, {
width: 270,
labelAlign: 'right',
xtype: 'textfield',
name: 'employee_number',
fieldLabel: 'Employee Number'
}]
解決方案A是矯枉過正imo。解決方案B目前不會按照其編碼工作。 'decideHide'是一個永遠不會執行的函數。解決方案C不使用功能。 – pllee
我必須承認,如果解決方案B希望在沒有全球範圍的情況下以這種方式工作,那麼您完全正確 – sra
談論解決方案C:如果可能的話,應該避免任何不需要的函數調用。這是循環內最重要的,但如果我只檢查一個條件,則不需要爲此調用函數。應用程序越大,這些小東西就越有助於保持性能。 – sra