 
			
				31.05.2016, 13:01
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Соединяю Node.js и Ext JS 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.06.2009 
					
					
					
						Сообщений: 1,033
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
			
			 
				Binding: И снова проблема с формулами
			 
			
		
		
		
		При запуске приложения следующая формула не срабатывает, в итоге кнопка break активна (ее активность зависит от этой формулы): 
breakButtonDisabled: function(get) {
	return !get("selectedGroupOrder") || get("stoped") && get("selectedGroupOrderStatus") != "complete";
},
Но если я уберу get("selectedGroupOrderStatus") != "complete", то формула при запуске приложения начинает работать:
 
breakButtonDisabled: function(get) {
	return !get("selectedGroupOrder") || get("stoped");
},
Почему так происходит и как сделать, чтобы она все-таки работала в первом случае?
 https://www.sencha.com/forum/showthr...58#post1136258 
		
	
		
		
		
		
		
			
				__________________ 
				Хусамов Сухроб, Москва, khusamov@yandex.ru 
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				31.05.2016, 13:04
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Соединяю Node.js и Ext JS 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.06.2009 
					
					
					
						Сообщений: 1,033
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Формула selectedGroupOrderStatus вычисляется следующим образом: 
selectedGroupOrderStatus: function(get) {
	return get("selectedGroupOrder.status");
},
selectedGroupOrder: function(get) {
	return get("groupOrderList.selection");
},
 
		
	
		
		
		
		
		
			
				__________________ 
				Хусамов Сухроб, Москва, khusamov@yandex.ru 
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.06.2016, 07:44
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Соединяю Node.js и Ext JS 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.06.2009 
					
					
					
						Сообщений: 1,033
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Выкрутился. И знаете как? Блин, хреново. Вот как: 
init: function() {
	var me = this;
	var vm = me.getViewModel();
	vm.set("selectedGroupOrderCompleted", null);
},
То есть, в контроллере вида, я просто инициализирую формулу (считая ее за переменную) любым значением кроме undefined. В итоге, формула при старте приложения срабатывает. И все что мне нужно делает.
 
В общем формулы сырые, с явными багами, либо я не знаю как ими пользоваться.
 
.  
		
	
		
		
		
		
		
			
				__________________ 
				Хусамов Сухроб, Москва, khusamov@yandex.ru 
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.06.2016, 20:33
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 21.05.2015 
					
					
					
						Сообщений: 321
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Про формулы, binding и прочие MVM штуки лучше спрашивать сразу в сенчовом форуме. Там обитают человеки, которые эту фигню написали и знают от и до. 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				01.06.2016, 20:57
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Соединяю Node.js и Ext JS 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.06.2009 
					
					
					
						Сообщений: 1,033
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Я туда уже два поста закинул. Пока молчат. 
		
	
		
		
		
		
		
			
				__________________ 
				Хусамов Сухроб, Москва, khusamov@yandex.ru 
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				03.06.2016, 19:01
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Соединяю Node.js и Ext JS 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.06.2009 
					
					
					
						Сообщений: 1,033
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Еще один вариант нашел как выкрутиться. Несколько лучше выглядит. Надо задать значение по умолчанию в самом компоненте. Например: 
text: "Print Label",
handler: "printLabel",
disabled: true, // значение по умолчанию
bind: {
	disabled: "{printLabelButtonDisabled}"
}
и формулы
 
formulas: {
	printLabelButtonDisabled: function(get) {
		var barcode = get("selectedCommand.barcode");
		return barcode ? barcode.indexOf("%") != -1 : true;
	},
	selectedCommand: function(get) {
		return get("commandsGrid.selection");
	}
},
 
		
	
		
		
		
		
		
			
				__________________ 
				Хусамов Сухроб, Москва, khusamov@yandex.ru 
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				03.06.2016, 19:02
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Соединяю Node.js и Ext JS 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 25.06.2009 
					
					
					
						Сообщений: 1,033
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 оф. форум заглох... вообще не отвечают уже 
		
	
		
		
		
		
		
			
				__________________ 
				Хусамов Сухроб, Москва, khusamov@yandex.ru 
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				07.06.2016, 09:11
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 07.06.2010 
					
					
					
						Сообщений: 146
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		отпуска     пляж и солнце.. временное затишье..    
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				07.06.2016, 09:12
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Кандидат Javascript-наук 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 07.06.2010 
					
					
					
						Сообщений: 146
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	| 
	
	
		
		
		
		
		 Самому, как не придется столкнуться с формулами, постоянно с ними разбираюсь, будто первый раз пользуюсь.. мне их логика никак не уложиться в голове... 
		
	
		
		
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 
 
 
 
	 | 
 
 
 |