True to allow any match - no regex start/end line anchors will be added
(Filter.js'deki yoruma göre) için izin vermek üzere anyMatch: true
kullanılmasını uyguladığım bir mağazaya çok yollu bir bağım var. Benim sorunum, multiselect-search-whole-string cevap gereğince bu uygulamaya ihtiyaç vardır özellikle bu keman sağlanan solüsyon https://fiddle.sencha.com/#fiddle/jf5MultiSelect araması için ExtJS'de Filter.JS için herhangi bir varsayılan varsayılan değiştirme
Ne olursa olsun sadece, anyMatch: true
ayarlanır yapmak istiyorum, bu yüzden Filter.js içinde ayarlayın, ama bunun kullanımı üzerinde hiçbir etkisi yoktur. Tüm kod aralığını, anyMatch: false
'un diğer örnekleri için aradım ve yalnızca diğeri ext-all-debug.js
. Neden bu değerleri herhangi bir etkiye sahip değilsiniz? Bu varsayılan değerin nerede ayarlanabileceğini görmüyorum? 1
DÜZENLEME ben farklı kılma çalıştı ve bunun doğru bir davranış sergileyen etmemesine karşın, bu sefer gerçekten bir şeyler yapıyor. MultiSelector denetimi içinde search
özniteliğinde gömülü olduğunda işe yarayan kod yığınından bu yana, MultiSelectorSearch'ün search
yönteminde ne bulunduğuna karar verdim, bunun için geçersiz kılmaya odaklanmak gerektiğiydi.
Ext.define('Ext.overrides.view.MultiSelectorSearch', {
override: 'Ext.view.MultiSelectorSearch',
search: function (text, me) {
var filter = me.searchFilter,
filters = me.getSearchStore().getFilters();
if (text) {
filters.beginUpdate();
if (filter) {
filter.setValue(text);
} else {
me.searchFilter = filter = new Ext.util.Filter({
id: 'search',
property: me.field,
value: text,
anyMatch: true
});
}
filters.add(filter);
filters.endUpdate();
} else if (filter) {
filters.remove(filter);
}
}
});
DÜZENLEME 2
Anladım: Bu ince ayarlar hakkında herhangi bir öneriniz en hoş olurdu! Anahtar, başlangıçta, bu kod bir tekil olarak gömüldüğünden, me
'u çağrı form.panelinden geçirerek yönteme başvurabilirdim. Bu geçersiz kılınmış olarak küresel çalışır ve
search: function (text) {
var me = this,
umarım bu birilerinin yardımcı olarak yöntemini tanımlamak için beni gerekli değildi!
Ben geçersiz kılma çalışacaktı bu sınıfını içe ama ben de işte o zaman olmaz Çalış, ve yeterince emin, bir geçersiz kılma çalışmıyor. Diğer geçersiz kılmalarım var, ben de bunları beğenirim. Cevabını düzenledim, ama görünüşe göre akran incelemesi yapmak zorunda. Her neyse, ad alanını 'Ext.overrides.util.Filter' ve Application.js'de içe aktarılacak sınıf olarak değiştirdim. –
Bu, özellikle yukarıdaki kemanı temel alan arama özniteliğine yaptığım değişiklik temelde farklı bir yer olan "anyMatch: true" ile aynı şeyi yapıyor olduğundan anlam ifade etmiyor. –
Öncelikle iyi yapamayacağını düşündükten sonra beni geçersiz kılmaya yönlendirmek için bir nokta verdim. –