Когда в форме датаполе myStore.sync подвисает 
		
		
		
		По идее этот код всегда должен скрывать сообщение. Иными словами callback должен всегда вызываться. 
	
myStore.sync({
     callback: function() {
           Ext.Msg.hide();
     }
});
Но у меня проблема, когда в форме находится датаполе, то не работает. Песочница: https://fiddle.sencha.com/#fiddle/o8h В чем может быть проблема?  | 
	
		
 1) callback не будет работать с memory proxy. Не предполагается там никаких callbacks. Это термин из мира AJAX. 
	2) вы делаете sync не изменив стор. В форме данные поменялись допустим, но эти изменения надо положить в стор. То есть вначале дулаем loadRecord чтоб показать запись в форме а по завершении надо сделать updateRecord: http://docs.sencha.com/extjs/5.1/5.1...d-updateRecord 3) вы всегда показываете message хотя реального sync может и не произойти если пользователь ничего не поменял в форме. И тогда тоже никаких callback не вызовется. Это надо проверять.. Вот мой форк: https://fiddle.sencha.com/#fiddle/o95  | 
	
		
 Спасибо!  
	по поводу первого пункта: у меня конечно в реальном проекте не мемори. Но я не знаю что тут сделать, чтобы состряпать быстро пример (увидел теперь как у вас сделано - буду знать) по поводу третьего пункта - я и не знал, что ничего не будет вызвано в случае если не были внесены изменения в форму - спасибо, сейчас переделаю проект возможно ошибка пропадет!!!  | 
	
		
 А можно строку 
	
if (myStore.getModifiedRecords().length || myStore.getRemovedRecords().length) {
заменить строкой 
if (form.isDirty()) {
вроде как короче? хотя она не работает почему-то... для чего этот метод isDirty вообще нужен?  | 
	
		
 form.isDirty проверяет только данную форму ..вносились ли зменения. Я  сделал проверку есть ли в принципе чтото что не сохранено в сторе. Что использовать из логики приложения решать разработчику. 
	 | 
	
		
 и почему она не работает тогда??? 
	isDirty выдает все время true https://fiddle.sencha.com/#fiddle/o9m  | 
	
		
 1) идем в описание isDirty: http://docs.sencha.com/extjs/5.1/5.1...method-isDirty 
	2) читаем, видим что после loadRecord форма либо делается dirty, либо нет в зависимости от конфига trackResetOnLoad: http://docs.sencha.com/extjs/5.1/5.1...ackResetOnLoad 3) меняем форму соответственно: 
form = Ext.create('Ext.form.Panel', {
            trackResetOnLoad : true,
            ...
4) профит  | 
	
		
 Ура, все заработало!  
	Спасибо! Про этот trackResetOnLoad читал, но не понял. Теперь осталось разобраться с условиями в bind-ах. В другой теме задал вопрос.  | 
| Часовой пояс GMT +3, время: 10:01. |