As you know, you can pass in expressions into any component property that requires a boolean value. These expressions can get quite long. For example, the Assign button on a bug database app may have an expression that looks like this:

{{ 
    $page.variables.assignedTo == null || 
    ($page.variables.severity == 1 && $page.variables.timeSpent > 10) || 
    ($page.variables.bugType == "Escalation" && $page.variables.customer == null ) 
}}

Which works fine except that IE 11 automatically truncates any properties over 160 characters. So for any really long expressions (and for the sake of isolating your business object in one place rather than having it spread out all through your HTML file), move this expression to a page function in your Javascript tab:

PageModule.prototype.enableAssignButton = function() {
    var enabled = true;

    if (
        $page.variables.assignedTo == null || 
        ($page.variables.severity == 1 && $page.variables.timeSpent > 10) || 
        ($page.variables.bugType == "Escalation" && $page.variables.customer == null)
    ) {
        enabled == false;
    };

    return enabled;
}

Then set the enabled property to {{ $page.functions.enableAssignButton }}