2016-03-29 9 views
2

Uzak bir sıralama etkinleştirilmiş bir uzak depoya bağlı bir ağım var.ExtJS6 - Izgara Sütunu Varsayılan Sıralama Yönü ASC'den DESC'ye

Kılavuzun üstbilgisini ilk defa tıklattığımda, sütun sırasını artan olacak şekilde ayarlar, ardından ikinci tıklamaya göre iner.

Belirli sütunlar için azalan sıraya girmenin ilk tıklamasını yapmanın bir yolu var mı?

cevap

2

Hmm .. Bunu anlamak için biraz zaman harcadık, varsayılan yönünü değiştirmek için doğrudan API olmadığı anlaşılıyor.

Sonunda düşündüğüm budur, mağazadaki sıralayıcıların defaultSortDirection öğelerini güncellemeniz gerekir. sütun düzeyinde varsayılan sıralama yönünü uygulamak isterseniz Burada

store.getSorters().$sortable.setDefaultSortDirection('DESC'); 

sonra kolon seviyesinde toggleSortState yöntemini geçersiz olabilir, Fiddle

Güncelleme

olduğunu. İşte

 columns: [{ 
      dataIndex: 'id', 
      text: 'ID', 
      width: 50, 
      /** 
      * Overriding this function to Change the Default Sort Order. 
      */ 
      toggleSortState: function() { 
       if (this.isSortable()) { 
        var me = this, 
         grid = me.up('tablepanel'), 
         store = grid.store, 
         sortParam = me.getSortParam(), 
         direction = undefined; 

        if(!store.getSorters().get(sortParam)) { 
         direction = 'DESC'; 
        }       
        this.sort(direction); 
       } 
      }, 
     } 

bunu seçilmiş olanlar için sadece uygulanan için bir yol yoktur sizce, sadece olumsuz tüm alanlar için onu değiştirir yani, çalışır Fiddle

+0

Teşekkür mı? – serg

+0

Cevabımı Güncelleme, Lütfen Kontrol Ediniz. – JChap

+0

Mükemmel, teşekkürler! – serg