Layout Renders Partially – How To Fix

Last year I wrote in-depth about ExtJS “heavy” JavaScript layout system in Sencha’s blog: http://www.sencha.com/blog/exploring-the-layout-system-in-ext-js-5-and-sencha-touch

Recently I discovered a rather interesting “issue” that all big ExtJS apps will hit eventually: the app will start “misbehaving” in a sense that very complex sections will sometimes render only partially and the UI will become unresponsive. This one will be extremely painful to figure out, as this is actually a result of a “silent failure” by the ExtJS layout system, due to a pre-emptive assumption of “if you’re running too much layout, you probably did something wrong” by the framework. Read on for an easy fix…

Continue reading Layout Renders Partially – How To Fix

VN:F [1.9.22_1171]
Rating: 7.8/10 (9 votes cast)

ExtJS 6 vs. Responsive

A few weeks ago I was at SenchaCon 2015 and majority of the sessions I attended revolved around ExtJS6 and Sencha’s responsive strategy. In summary: an effort has been made to converge ExtJS5 and Sencha Touch 2, but ultimately you will still be building a separate ExtJS and a separate Touch app. You do not end up with truly “one framework”, which is what I hoped for. Read on for details…

Continue reading ExtJS 6 vs. Responsive

VN:F [1.9.22_1171]
Rating: 8.1/10 (13 votes cast)

How to “sencha package build” a “code” package

You can follow Sencha’s guide all you want, but you won’t be able to build a stand alone “code” package due to errors like:

com.sencha.exceptions.ExNotFound: Unknown definition for dependency : Ext.Component

To fix this, you need to add the following to your package’s .sencha/app/sencha.cfg

package.framework=ext

VN:F [1.9.22_1171]
Rating: 6.6/10 (10 votes cast)

Debugging ExtJS “Layout Run Error”

Recently I had to fix a lot of “[E] Layout run error” errors in an ExtJS 4.2.0 app. While I like to think I know ExtJS layouts fairly well and consider them one of the best parts of ExtJS, this experience has shown me a “darker” side of ExtJS layouts. When you’re dealing with many (10+) layers of Containers, it seems there exist many unpredictable combinations of layouts that will result in “[E] Layout run error” in console, sometimes with functional implications, and other times without. Sometimes the smallest things can cause this error; i.e. I had a configuration setting on a Container:

style: { height: '54px' }

…and while everything looked and functioned correctly, a “layout run error” was being logged; changing the configuration to an explicit height solved the issue:

height: 54

The following 2-step approach has worked for me in systematically resolving numerous of these layout run errors:

Continue reading Debugging ExtJS “Layout Run Error”

VN:F [1.9.22_1171]
Rating: 10.0/10 (4 votes cast)

Old Versions of Sencha CMD

Sencha CMD is a must-have if you’re doing any professional ExtJS or Sencha Touch app development. You can always get the latest version from Sencha’s product page, but what if you wanted to get an older version? Sure, upgrading to the latest version is an option, but we all know how smooth those upgrades can go (or not, especially if you messed with the build scripts).

TLDR
Older versions with release notes are available via this URL pattern:

http://cdn.sencha.com/cmd/x.x.x.xxx/release-notes.html

For instance:

http://cdn.sencha.com/cmd/3.1.2.342/release-notes.html
http://cdn.sencha.com/cmd/5.0.3.324/release-notes.html

So, the caveat is that you have to know the exact version which you’re after!

VN:F [1.9.22_1171]
Rating: 9.0/10 (6 votes cast)