The controller manages the loading and unloading of layouts.
Extending controller
Applications may choose to extend the controller to provide a custom implementation. Your custom controller class name should be the capitalized appID for your application followed by the word "Controller".
Example:
SUGAR.App.PortalController = SUGAR.App.controller.extend({
loadView: function(params) {
// Custom implementation of loadView
// Should call super method:
SUGAR.App.Controller.prototype.loadView.call(this, params);
}
});
Members
-
context :Core/Context
-
The primary context of the app. This context is associated with the root layout.
Type:
Methods
-
initialize()
-
Instantiates the application's main context and binds global events.
-
loadAdditionalComponents(components)
-
Creates, renders, and registers within the app additional components.
Parameters:
Name Type Description componentsObject The components to load. They will be created using metadata view definitions and rendered on the page. The components objects are cached in the the global
SUGAR.Appvariable under theadditionalComponentsproperty. -
loadView(params)
-
Loads a layout.
Sets the context with the given params, creates the layout based on metadata, loads the data and renders it. It also disposes the previous displayed layout. This method is called by the router when the route is changed.
Parameters:
Name Type Description paramsObject Properties to set to the context and used to determine the layout to load.
Properties
Name Type Argument Default Description layoutstring The layout name. It will be used to grab the corresponding metadata.
modulestring The module the layout belongs to.
skipFetchboolean <optional>
false If
true, do not fetch the data.