Newer Version Available

This content describes an older version of this product. View Latest

Namespace Usage Examples and Reference

This topic provides examples of referencing components, objects, fields, and so on in Lightning components code.
Examples are provided for the following.
  • Components, events, and interfaces in your organization
  • Custom objects in your organization
  • Custom fields on standard and custom objects in your organization
  • Server-side Apex controllers in your organization
  • Dynamic creation of components in JavaScript
  • Static resources in your organization

Organizations with No Namespace Prefix Set

The following illustrates references to elements in your organization when your organization doesn’t have a namespace prefix set. References use the default namespace, c, where necessary.

Referenced Item Example
Component used in markup <c:myComponent />
Component used in a system attribute <aura:component extends="c:myComponent">

<aura:component implements="c:myInterface">

Apex controller <aura:component controller="ExpenseController">
Custom object in attribute data type <aura:attribute name="expense" type="Expense__c" />
Custom object or custom field in attribute defaults
1<aura:attribute name="newExpense" type="Expense__c"
2    default="{ 'sobjectType': 'Expense__c',
3               'Name': '',
4               'Amount__c': 0,
5
6    }" />
Custom field in an expression <ui:inputNumber value="{!v.newExpense.Amount__c}" label=… />
Custom field in a JavaScript function
1updateTotal: function(component) {
2
3    for(var i = 0 ; i < expenses.length ; i++){
4        var exp = expenses[i];
5        total += exp.Amount__c;
6    }
7
8}
Component created dynamically in a JavaScript function
1var myCmp = $A.createComponent("c:myComponent", {},
2    function(myCmp) { }
3);
Interface comparison in a JavaScript function aCmp.isInstanceOf("c:myInterface")
Event registration <aura:registerEvent type="c:updateExpenseItem" name=… />
Event handler <aura:handler event="c:updateExpenseItem" action=… />
Explicit dependency <aura:dependency resource="markup://c:myComponent" />
Application event in a JavaScript function var updateEvent = $A.get("e.c:updateExpenseItem");
Static resources <ltng:require scripts="{!$Resource.resourceName}" styles="{!$Resource.resourceName}" />

Organizations with a Namespace Prefix

The following illustrates references to elements in your organization when your organization has set a namespace prefix. References use an example namespace yournamespace.

Referenced Item Example
Component used in markup <yournamespace:myComponent />
Component used in a system attribute <aura:component extends="yournamespace:myComponent">

<aura:component implements="yournamespace:myInterface">

Apex controller <aura:component controller="yournamespace.ExpenseController">
Custom object in attribute data type <aura:attribute name="expenses" type="yournamespace__Expense__c[]" />
Custom object or custom field in attribute defaults
1<aura:attribute name="newExpense" type="yournamespace__Expense__c"
2    default="{ 'sobjectType': 'yournamespace__Expense__c',
3               'Name': '',
4               'yournamespace__Amount__c': 0,
5
6    }" />
Custom field in an expression <ui:inputNumber value="{!v.newExpense.yournamespace__Amount__c}" label=… />
Custom field in a JavaScript function
1updateTotal: function(component) {
2
3    for(var i = 0 ; i < expenses.length ; i++){
4        var exp = expenses[i];
5        total += exp.yournamespace__Amount__c;
6    }
7
8}
Component created dynamically in a JavaScript function
1var myCmp = $A.createComponent("yournamespace:myComponent",
2    {},
3    function(myCmp) { }
4);
Interface comparison in a JavaScript function aCmp.isInstanceOf("yournamespace:myInterface")
Event registration <aura:registerEvent type="yournamespace:updateExpenseItem" name=… />
Event handler <aura:handler event="yournamespace:updateExpenseItem" action=… />
Explicit dependency <aura:dependency resource="markup://yournamespace:myComponent" />
Application event in a JavaScript function var updateEvent = $A.get("e.yournamespace:updateExpenseItem");
Static resources <ltng:require scripts="{!$Resource.yournamespace__resourceName}" styles="{!$Resource.yournamespace__resourceName}" />